如何使用jQuery或javascript对象数组进行排序我有一组对象:var array = [(id, name, value),(id, name, value)]; //and so on如何使数组按atDistribute名称的升序排序?(array[i][1])?我试过这样做:array[i][1].sort()但这行不通。请帮帮我!编辑:数组可以包含两个以上的对象!它可以容纳数百人。编辑:为什么这个问题在“重复”问题提出两年之前就被提出,却被标记为重复问题?
3 回答
至尊宝的传说
TA贡献1789条经验 获得超10个赞
//This will sort your array
function SortByName(a, b){
var aName = a.name.toLowerCase();
var bName = b.name.toLowerCase();
return ((aName < bName) ? -1 : ((aName > bName) ? 1 : 0));}array.sort(SortByName);
明月笑刀无情
TA贡献1828条经验 获得超4个赞
var array = [[1, "grape", 42], [2, "fruit", 9]];array.sort(function(a, b){
// a and b will here be two objects from the array
// thus a[1] and b[1] will equal the names
// if they are equal, return 0 (no sorting)
if (a[1] == b[1]) { return 0; }
if (a[1] > b[1])
{
// if a should come after b, return 1
return 1;
}
else
{
// if b should come after a, return -1
return -1;
}});sort-1, 01
蓝山帝景
TA贡献1843条经验 获得超7个赞
//objects
var array = [{id:'12', name:'Smith', value:1},{id:'13', name:'Jones', value:2}];array.sort(function(a, b){
var a1= a.name.toLower(), b1= b.name.toLower();
if(a1== b1) return 0;
return a1> b1? 1: -1;});//arraysvar array =[ ['12', ,'Smith',1],['13', 'Jones',2]];array.sort(function(a, b){
var a1= a[1], b1= b[1];
if(a1== b1) return 0;
return a1> b1? 1: -1;});添加回答
举报
0/150
提交
取消
