544 One-Line answer. itemsArray.sort(function(a, b){ return sortingArr.indexOf(a) - sortingArr.indexOf(b); }); Or even shorter: itemsArray.sort((a, b) => sortingArr.indexOf(a) - sortingArr.indexOf(b)); https://stackoverflow.com/questions/13304543/javascript-sort-array-based-on-another-array