如何使用 jquery 自己的函数对数组进行排序,如下所示?我认为 grep() 是我应该查看的那个?
谢谢!
数组:
array (
array(
'id' => 0,
'name' => 'myName',
'weight' => 100
);
array(
'id' => 1,
'name' => 'myName2',
'weight' => 150,
);
);
编辑:这是一个 PHP 数组来澄清问题 - 我不完全确定如何编写正确的 javascript(JSON?)数组?
最佳答案
首先,我假设您实际上正在谈论一个看起来像这样的 Javascript 数组:
var myArray = [
{
id: 0,
name: 'myName',
weight: 100
},
{
id: 1,
name: 'myName2',
weight: 150
}
]
然后您可以在此数组上调用 native Javascript 函数 sort()
。在这种情况下,您需要提供一个函数回调。这需要使用语法function (a, b)
来定义。 a
和 b
是数组中的元素。如果a
在数组中的排名应该高于b
,则需要返回-1
,如果应该返回1
排名较低,如果相等则为 0
。
如果您想按权重降序对它们进行排序,您可以执行以下操作:
myArray.sort(function(a, b) {
return b.weight - a.weight;
});
关于Jquery 数组过滤 - grep()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4186481/