【发布时间】:2016-04-02 03:11:09
【问题描述】:
你会如何通过 values 属性对关联数组进行排序?值本身是具有多个属性的对象,并且对象的属性之一是字符串。我希望能够按字符串的字母顺序重新排列数组。这可能吗?
我尝试在几个地方寻找答案,包括这里: How to sort an array of associative arrays by value of a given key in PHP?
How to sort an associative array by its values in Javascript?
How to sort an (associative) array by value?
我不认为那些回答了我的问题......尤其是没有以我理解的方式。任何帮助,将不胜感激。 示例:
Object = {
1: obj.prop = "C",
5: obj.prop = "A,
3: obj.prop = "B
}
我想要:
Object = {
5: obj.prop = "A",
3: obj.prop = "B",
1: obj.prop = "C"
}
【问题讨论】:
-
(1) JavaScript 对象有点类似于“关联数组”,但它们实际上并不完全相同,并且 (2) 对象中的属性没有特定的顺序; “排序”没有意义。
-
您可以使用
Object.keys()提取属性名称的数组,按您喜欢的方式对其进行排序,然后遍历它以按该顺序访问对象属性。跨度> -
第二个链接完美运行
-
@John 对象属性可以以数字开头,只要它们是字符串。
{"0":1}是一个有效对象,{"0":1,"00":1}也是如此。 -
其他问题和答案你不明白的地方是什么?如果您对这些答案有单独的问题,请发布该问题;否则,这是重复的。
标签: javascript