【问题标题】:How to sort a json object by numeric sorting method [closed]如何通过数字排序方法对json对象进行排序[关闭]
【发布时间】:2021-02-28 12:22:53
【问题描述】:

我有一个对象,其显示值是一个包含数字的字符串
我希望按数字排序而不是字母排序对值进行排序

Let jsonObj = [{ displayValue : 'B1'}, {displayValue : 'A3'},{ displayValue : 'D1'}, {displayValue : 'C2'}, {displayValue: 'A4'}, {displayValue: 'D3'}];

所以输出应该有 B1、D1、C2、A3、A4

谁能帮我解决数字排序的逻辑 任何帮助表示赞赏

提前致谢

【问题讨论】:

  • 那不是 JSON。它是一个 JavaScript 对象字面量。
  • 这里有几个任务:(1) 将属性值提取到一个数组中。 (2) 对该数组进行排序。所以这个问题太笼统了。如果您可以解决(1),那么您的问题应该只是(2),提供带有字符串的数组(但这是一个重复的问题)。如果你不能解决(1),那么不要提及排序(但又是一个重复的问题)。

标签: javascript angular


【解决方案1】:

这将根据需要对数组进行排序:

array.sort((a, b) => +a.displayValue.match(/\d+/)[0] - +b.displayValue.match(/\d+/)[0] > 0 ? 1 : -1);

【讨论】:

    猜你喜欢
    • 2019-09-07
    • 2011-03-14
    • 2013-07-08
    • 1970-01-01
    • 1970-01-01
    • 2017-06-07
    • 2018-02-13
    相关资源
    最近更新 更多