【发布时间】:2020-02-22 06:54:21
【问题描述】:
我有一个包含以下结构的嵌套数组:
arr: Array(2)
0: [id: 1, area: 111, area_str: "111,00 m²"]
1: [id: 2, area: 555, area_str: "555,00 m²"]
我正在尝试根据给定键及其对应值对整个嵌套数组进行排序。因此,例如,当提供的键是“区域”时,索引为 0 和 1 的嵌套项应根据通过比较给定键的值计算的排序结果作为一个整体重新排序。
参考此示例,所需的输出应如下所示:
arr: Array(2)
0: [id: 2, area: 555, area_str: "555,00 m²"]
1: [id: 1, area: 111, area_str: "111,00 m²"]
排序机制应该按升序和降序工作。我已经尝试使用 sort() 函数,但我只找到了对 ONE 数组中的键或值进行排序的示例,而不是通过更改索引位置来对嵌套子数组进行排序的示例。
如果您能给我一些关于如何实现这一目标的建议,我会很高兴。 提前致谢!
【问题讨论】:
-
这看起来不像嵌套数组,而是一个对象数组(提示:
area不是数组的有效数字索引)
标签: javascript arrays sorting indexing key