基于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' ]