当我尝试使用 sort() 进行排序时,数组中有间隔,然后它给了我错误的答案并且无法对其进行排序..有人知道如何对此进行排序吗? 这是我尝试过的
array=["1050-3000","150-250","1-49","3001-9999","251-400","401-600","601-1049","50-149"]
当我排序时:- array.sort();
它给了我这个答案:-
["1-49","1050-3000","150-250","3001-9999","251-400","401-600","601-1049","50-149"]
但我期望的是:-
["1-49","50-149","150-250","251-400","401-600","601-1049","1050-3000","3001-9999"]
最佳答案
您必须拆分
字符串并比较第一个元素。
let array = ["1050-3000", "150-250", "1-49", "3001-9999", "251-400", "401-600", "601-1049", "50-149"];
array.sort((a, b) => a.split("-")[0] - b.split("-")[0]);
console.log(array);
关于javascript - JavaScript 中的数组 sort() 给出了错误的答案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48930742/