代码之家  ›  专栏  ›  技术社区  ›  Stfvns

排序数字数组并返回索引js

  •  -1
  • Stfvns  · 技术社区  · 6 年前

    var num = [2,1,2,6,2,4];
    

    我想排序,但返回 index

    var result = [1, 0, 2, 4, 5, 3];
    

    如果有一个相同的数字,越小 应该把…放在第一位。

    0 回复  |  直到 6 年前
        1
  •  2
  •   Nina Scholz    6 年前

    你可以得到所有的索引和排序的值 num

    var num = [2, 1, 2, 6, 2, 4],
        indices = [...num.keys()].sort((a, b) => num[a] - num[b]);
    
    console.log(indices); // [1, 0, 2, 4, 5, 3]