返回键的javascript sort函数

JavaScript具有用于数组的内置排序方法.

我需要的是数组的键,而不是值.我不想修改数组.
有没有一种明显的方法来获取这些键(在我开始编写自己的排序之前…)?

例:

var fruit = ["pear", "apple", "lemon"];
fruit.sort();
// now fruit is ["apple", "lemon", "pear"];

但是我想知道的是

keys = [1,2,0] ; 

所以我可以这样使用它:

var fruit = ["pear", "apple", "lemon"]; 
var keys = keysOfSortedArray(fruit);
for(var i in keys) {
  console.log(fruit[key[i]]);
}

感谢您的帮助.你们所有人

解决方法:

试试这个代码:

var fruit = ["pear", "apple", "lemon"];
var sorted = [].concat(fruit).sort();

var sortedIndex = sorted.map(function(item) { 
   return fruit.indexOf(item)
});
console.log(sortedIndex) // prints [1, 2, 0];
上一篇:PHP按列名排序多维数组


下一篇:20165233 实验一 Java开发环境的熟悉