Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/438.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 按对象字段对对象数组排序_Javascript - Fatal编程技术网

Javascript 按对象字段对对象数组排序

Javascript 按对象字段对对象数组排序,javascript,Javascript,我构建了一个这样的数组 result.push({ id: id, reference: sometext }); 现在,我想通过引用对这个数组进行排序,其中包含一些文本 我试过这个: result.sort(function(a,b) { return result[a]-result[b]; }); 这个 应该得到 [ { id: 2, reference: 'apple' }, { id: 1, reference: 'banana' } ] 改为这样做: result.so

我构建了一个这样的数组

result.push({ id: id, reference: sometext });
现在,我想通过
引用
对这个数组进行排序,其中包含一些文本

我试过这个:

result.sort(function(a,b) {
    return result[a]-result[b];
});
这个

应该得到

[ { id: 2, reference: 'apple' },
{ id: 1, reference: 'banana' } ]

改为这样做:

result.sort(function(a,b) {
    return a.reference < b.reference ? -1 : 1;
});
result.sort(函数(a,b){
返回a.reference
试试这个

result.sort(function(a,b) {
// Compare reference
if(a.reference < b.reference) {
   // a's reference is lesser than the one in b
   return -1;
} else if (a.reference == b.reference) {
   // Both reference params are equal
   return 0;
} else {
   // a's reference is greater than that of b
   return 1
}
});
result.sort(函数(a,b){
//比较参考
如果(a.参考
这将返回结果数组的排序版本。

可能重复的
result.sort(function(a,b) {
// Compare reference
if(a.reference < b.reference) {
   // a's reference is lesser than the one in b
   return -1;
} else if (a.reference == b.reference) {
   // Both reference params are equal
   return 0;
} else {
   // a's reference is greater than that of b
   return 1
}
});