在 JavaScript 中不使用 sort() 排序数组
我们需要编写一个 JavaScript 函数,该函数接受一个数字数组。
该函数应使用 Array.prototype.sort() 方法对数组进行排序,但在此处我们要求使用 Array.prototype.reduce() 方法对数组进行排序。
因此,让我们编写此函数的代码 −
示例
代码如下 −
const arr = [4, 56, 5, 3, 34, 37, 89, 57, 98]; const sortWithReduce = arr => { return arr.reduce((acc, val) => { let ind = 0; while(ind < arr.length && val < arr[ind]){ ind++; } acc.splice(ind, 0, val); return acc; }, []); }; console.log(sortWithReduce(arr));
输出
控制台中的输出将为 −
[ 98, 57, 89, 37, 34, 5, 56, 4, 3 ]
广告