在 JavaScript 中根据另一个数组对数组进行排序
我们要求编写一个排序函数,该函数根据另一个数组的内容对数组进行排序。
例如,我们必须对原始数组进行排序,以便以下 sortOrder 数组中存在的元素显示在原始数组的开头,并且所有其他元素保持其顺序:
const originalArray = ['Apple', 'Cat', 'Fan', 'Goat', 'Van', 'Zebra']; const sortOrder = ['Zebra', 'Van'];
示例
const originalArray = ['Apple', 'Cat', 'Fan', 'Goat', 'Van', 'Zebra']; const sortOrder = ['Zebra', 'Van']; const sorter = (a, b) => { if(sortOrder.includes(a)){ return -1; }; if(sortOrder.includes(b)){ return 1; }; return 0; }; originalArray.sort(sorter); console.log(originalArray);
输出
控制台中输出将是 -
[ 'Zebra', 'Van', 'Apple', 'Cat', 'Fan', 'Goat' ]
广告