【问题标题】:array sorting follow by custom sequence in java script数组排序遵循javascript中的自定义序列
【发布时间】:2017-09-18 06:11:33
【问题描述】:

如何按照这个序列 sm,s,m,l,xl 对数组进行排序。 例如, 我有一个像 var a = [xl,sm,s,m] 这样的数组,然后我想将数组重新排列为 sm,s,m,xl

【问题讨论】:

标签: javascript arrays sorting


【解决方案1】:

您可以获取一个包含字符串值及其位置的对象进行排序。

var array = ['xl', 'sm', 's', 'm'],
    order = { sm: 1, s: 2, m: 3, xl: 4 };

array.sort(function (a, b) {
    return order[a] - order[b];
});


console.log(array);

【讨论】:

    【解决方案2】:

    我不确定我理解你想要什么,但我认为你想要如下所示:

    var sortGuide = ["sm", "s", "m", "xl"];
    var a = ["xl", "sm", "s", "m"];
    a.sort((it1, it2) => sortGuide.indexOf(it1) - sortGuide.indexOf(it2));
    console.log(a);
    

    【讨论】:

      猜你喜欢
      • 2014-07-15
      • 1970-01-01
      • 1970-01-01
      • 2011-11-01
      • 2023-03-11
      • 2019-08-20
      • 1970-01-01
      • 2020-05-29
      • 1970-01-01
      相关资源
      最近更新 更多