-
元芳怎么了
用于slice()制作副本,您可以在不改变原始数组的情况下进行排序,然后map()创建原始数组中每个已排序元素的索引的数组。const data = [5.3, 2.4, 4.5, 6.2], data2 = [10, 11, 5, 34, 3, 7, 17];const sortedIndex = (arr) => { return arr.slice().sort((a, b) => a - b).map(n => arr.indexOf(n))}console.log(JSON.stringify(sortedIndex(data)));console.log(JSON.stringify(sortedIndex(data2)));
-
呼啦一阵风
只需两行代码即可完成此操作:var unsortedArray = [6, 4, 9, 1, 5];var sortedArray = unsortedArray.slice().sort();console.log(sortedArray); // [1, 4, 5, 6, 9]console.log(unsortedArray); // [6, 4, 9, 1, 5]
-
慕桂英4014372
您可以只复制数组然后对副本进行排序吗?var array0 = [4,2,5,7,1.6];var array1 = [];for(var i=0;i<array0.length;i++){ array1.push(array0[i]);}array1.sort();//array0 = [4,2,5,6,1.6]//array1 = [1.6,2,4,5,6]