Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/402.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
javascript中的数组排序_Javascript_Arrays_Sorting - Fatal编程技术网

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] })

我有一个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] })
演示

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];});