2013-10-14 296 views
-8

我想排序多dimensionsal阵列看起来像排序多维数组如下:通过特定领域

var test_array = { "214": { "id": "214", "name": "Mike Smith", "salary": 50000 }, 
"336": { "id": "336", "name": "John Doe", "salary": 60000 }, 
"134": { "id": "134", "name": "Jane Doe", "salary": 100000 }, 
"914": { "id": "914", "name": "Bob White", "salary": 25000 } }; 

我想排序的工资降场和jQuery功能都在可以接受的解决方案。

+3

感谢您发布您的要求。现在请发布您的尝试... –

+3

一个方面说明:它不是一个数组 – zerkms

+1

可能重复http://stackoverflow.com/questions/1129216/sorting-objects-in-an-array-by-a-field-value -in-javascript?rq = 1 – Oriol

回答

2

你不能排序你的数组,因为实际上它是一个对象而不是数组。

和JS对象是无序名称/值对的集合。

如果您想要订购,请使用数组而不是对象,例如,

var test_array = [ 
    { "id": "214", "name": "Mike Smith", "salary": 50000 }, 
    { "id": "336", "name": "John Doe", "salary": 60000 }, 
    { "id": "134", "name": "Jane Doe", "salary": 100000 }, 
    { "id": "914", "name": "Bob White", "salary": 25000 } 
]; 
test_array.sort(function(a,b){ 
    if(a.salary < b.salary) return -1; 
    if(a.salary > b.salary) return 1; 
    return 0; 
}); 
+2

@Benjamin Gruenbaum:OP没有阵列。 +1 – zerkms

+0

@Benjamin Gruenbaum:我没有任何怀疑。这使得这个问题只是*不完整*,**不** *不正确*。 – zerkms

+0

@zerkms这并不完整。 OP得到了错误的术语。这完全清楚他想完成什么。他希望根据工资确定他的ID /姓名/工资对象。哪个btw Oriol刚刚编辑到这个答案。我已经删除了我的downvote。 –