如何按指定元素对数组进行排序?

时间:2018-11-30 17:18:35

标签: javascript arrays sorting

我有一个数组数组,数组中的每个数组都这样设置

[1, firstname, lastname, 22]

我总共有12个,我试图按降序按每个数组的第4个元素对数组进行排序,但是我没有尝试过,但是我一直在尝试对array.sort进行比较函数并查看每个数组中的第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]));
}

我期望的是该函数按第4个元素对数组进行排序,但它不断抛出Uncaught Type错误。

1 个答案:

答案 0 :(得分:2)

我建议阅读how sort works


.sort方法处理排序。您不需要for-loop

相反,您需要使函数正确地对两个条目进行排序:

function sortTwoArrays(a, b){
    return a[3] - b[3];
}

现在,您可以将其作为参数传递给.sort的{​​{1}}方法:

employeeArray

这将修改数组。