我找到了一个很好的方法来根据以下定义的属性之一对对象数组进行排序:
使用该功能可以完美地用于单一排序(在所有浏览器上),甚至可以在另一种排序中使用Google Chrome进行排序!这是EgeÖzcan对物体阵列的伟大排序程序
function dynamicSort(property) {
return function (a,b) {
return (a[property] < b[property]) ? -1 : (a[property] > b[property]) ? 1 : 0;
}
}
Run Code Online (Sandbox Code Playgroud)
使用名为"Data"的数组(当然,我的数组有更多对象)...
var Data = [{Category: "Business", Value: "ABC"},{Category:"Personal", Value:"XYZ"}];
Run Code Online (Sandbox Code Playgroud)
通过这样做,我可以得到一个正确的排序,其中订单被列为每个类别中的所有值...
Data.sort(dynamicSort("Value"));
Data.sort(dynamicSort("Category"));
Run Code Online (Sandbox Code Playgroud)
通过首先排序Value,然后按Category,我的数组将所有值按排序顺序排列,首先列出所有业务基础值,然后列出所有基于个人的值.完善!除了在Chrome中,数据按类别正确排序,但每个类别中的值的顺序似乎相当随机.
有没有人知道在Chrome中进行排序的更好方法?