创建一个对象数组,其中每个对象包含数组中的一个元素和其在给定排序数组中的值
使用JavaScript的sort()函数将该对象数组按其关联的值进行排序
通过map()函数仅从排序对象数组中获取排序后的元素,即按给定数组的值对元素进行排序。
代码示例:
const sortByArray = (arr, sortBy) => { const sortObj = arr.map((element, index) => { return { value: element, sortValue: sortBy[index] } });
sortObj.sort((a, b) => a.sortValue - b.sortValue);
const sortedArr = sortObj.map(element => element.value);
return sortedArr; }
// 示例用法 const arr = [10, 20, 30, 40, 50]; const sortBy = [3, 1, 4, 2, 5];
console.log(sortByArray(arr, sortBy)); // [20, 40, 10, 30, 50]