Javascript 如何按指定的元素对数组进行排序?
我有一个数组,数组中的每个数组都是这样设置的Javascript 如何按指定的元素对数组进行排序?,javascript,arrays,sorting,Javascript,Arrays,Sorting,我有一个数组,数组中的每个数组都是这样设置的 [1, firstname, lastname, 22] 我一共有12个这样的数组,我试图按每个数组的第4个元素按降序对数组进行排序,但没有任何效果,也就是说,我一直在尝试使用比较函数进行数组排序,并查看每个数组中的第4个元素,但无法使其工作。以下是我目前拥有的: function sortArray (a, b){ return a-b; } for (var k = 0; k<employeeArray.length; k++)
[1, firstname, lastname, 22]
我一共有12个这样的数组,我试图按每个数组的第4个元素按降序对数组进行排序,但没有任何效果,也就是说,我一直在尝试使用比较函数进行数组排序,并查看每个数组中的第4个元素,但无法使其工作。以下是我目前拥有的:
function sortArray (a, b){
return a-b;
}
for (var k = 0; k<employeeArray.length; k++){
var j = k-1;
employeeArray.sort(sortArray([k][3],[j][3]));
}
函数排序(a,b){
返回a-b;
}
对于(var k=0;k,我建议在
.sort
方法处理排序。循环
不需要for
相反,您需要让函数对两个条目进行正确排序:
function sortTwoArrays(a, b){
return a[3] - b[3];
}
现在,您可以将其作为参数传递给employeeArray的sort
方法:
employeeArray.sort(sortTwoArrays);
这将修改阵列。我建议您在上阅读
.sort
方法处理排序。循环
不需要for
相反,您需要让函数对两个条目进行正确排序:
function sortTwoArrays(a, b){
return a[3] - b[3];
}
现在,您可以将其作为参数传递给employeeArray的sort
方法:
employeeArray.sort(sortTwoArrays);
这将修改数组。您正在将一个数值传递给sort
。您需要传递一个返回此类数值的函数。类似于employeeArray.sort((a,b)=>b[3]-a[3])
您正在将一个数值传递给sort
。您需要传递一个返回这样一个数值的函数。类似于employeeArray.sort((a,b)=>b[3]-a[3])
谢谢!这正是我想要做的!@Ryan请接受!谢谢!这正是我想要做的!@Ryan请接受!