我要排序的数组中的JSON,根据财产像这样:排序数组
[
{num:5},{num:3},{num:6},{num:9}
]
排序后,我想
[
{num:3},{num:5},{num:6},{num:9}
]
怎么做在JavaScript中?
我要排序的数组中的JSON,根据财产像这样:排序数组
[
{num:5},{num:3},{num:6},{num:9}
]
排序后,我想
[
{num:3},{num:5},{num:6},{num:9}
]
怎么做在JavaScript中?
排序函数(文字)分别返回1,-1,0作为升序,降序和相等。
array.sort(function(a, b) {
return a.num - b.num
});
the_array.sort(function(a,b) { return a.num-b.num });
在排序中()的函数是比较
var arr = [
{num:5},{num:3},{num:6},{num:9}
];
arr.sort(function(a,b) { return a.num-b.num; });
document.write(JSON.stringify(arr));
如果您需要对项目进行排序向后这将是b.num-a.num
。
我将'console.log'改为'document.write',并且还添加了'JSON.stringify()',以便让你的代码更有用:) – nicael 2015-04-01 08:41:18
谢谢@nicael! – 2015-04-01 08:41:53
在这种情况下,您应该学会使用lambda表达式,这是函数式编程的关键。答案很简单:
arr.sort(function(a,b){
return a.num - b.num;
})
如果您不知道高阶函数或lambda,那么您实际上并没有编写JavaScript代码。
你已经试过了什么?无论如何,这里有很多像这样的问题! :P – briosheje 2015-04-01 08:33:43
@briosheje我之前没有这样做过。我不知道。 :( – Bubble 2015-04-01 08:35:47
您可以使用.sort,.filter或.map,您的选择!:P – briosheje 2015-04-01 08:37:08