javascript中的数组排序
我有一个javascript数组,看起来像 var数据选项卡=[[1,id_1001],[4,id_1004],[3,id_1003],[2,id_1002],[5,id_1005]] 我想根据第一个值对它们进行排序,比如 1,id_1001 2,id_1002 3,id_1003 4,id_1004 5,身份证号码1005 有什么办法吗?我可以用javascript对它们进行排序。试试:javascript中的数组排序,javascript,arrays,sorting,Javascript,Arrays,Sorting,我有一个javascript数组,看起来像 var数据选项卡=[[1,id_1001],[4,id_1004],[3,id_1003],[2,id_1002],[5,id_1005]] 我想根据第一个值对它们进行排序,比如 1,id_1001 2,id_1002 3,id_1003 4,id_1004 5,身份证号码1005 有什么办法吗?我可以用javascript对它们进行排序。试试: data_tab.sort(function(a, b){ return a[0] - b[0] })
data_tab.sort(function(a, b){ return a[0] - b[0] })
演示:
var data_tab = [[1,'id_1001'],[4,'id_1004'],[3,'id_1003'],[2,'id_1002'],[5,'id_1005']]
data_tab = data_tab.sort(function(a, b){ return a[0] - b[0] })
console.log(data_tab);
# Give [[1,'id_1001'],[2,'id_1002'],[3,'id_1003'],[4,'id_1004'],[5,'id_1005']]
:
sort()
方法对数组中的元素进行就地排序,然后
返回数组。这种情况不一定稳定。默认值
排序顺序是字典式的(不是数字)
输出
[ [ 1, 'id_1001' ],
[ 2, 'id_1002' ],
[ 3, 'id_1003' ],
[ 4, 'id_1004' ],
[ 5, 'id_1005' ] ]
var data_tab=[[1,“id_1001”],[4,“id_1004”],[3,“id_1003”],[2,“id_1002”],[5,“id_1005”]]
函数比较(第一,第二){
if(第一个[0]<第二个[0])
返回-1;
如果(第一个[0]>第二个[0])
返回1;
返回0;
}
数据选项卡排序(比较);
您搜索过“javascript排序数组”吗?你测试了什么吗?可能是重复的嘿,别回答了,我们已经有8个答案了,谷歌马上回答了这个简单的问题…我想我们应该把它作为一个dup关闭。忘了添加“返回”。
[ [ 1, 'id_1001' ],
[ 2, 'id_1002' ],
[ 3, 'id_1003' ],
[ 4, 'id_1004' ],
[ 5, 'id_1005' ] ]
var data_tab = [[1,"id_1001"],[4,"id_1004"],[3,"id_1003"],[2,"id_1002"],[5,"id_1005"]]
function compare(first,second) {
if (first[0] < second[0])
return -1;
if (first[0] > second[0])
return 1;
return 0;
}
data_tab.sort(compare);
data_tab.sort(function(a,b){return a[0]-b[0];});