[英]Javascript trying to sort a mixed array numerically
我正在尝试对数组进行排序
arr = ["Joe1,345", "James,1002", "Bill,24"].
我需要按数字降序排列它们,但是最后可能会有不同数量的数字。 我尝试了冒泡排序:
function bubbleSort(a) {
var swapped;
do {
swapped = false;
for (var i=0; i < a.length-1; i++) {
if (a[i] > a[i+1]) {
var temp = a[i];
a[i] = a[i+1];
a[i+1] = temp;
swapped = true;
}
}
} while (swapped);
return a;
}
但这没有用-有人知道如何实现这一目标吗? 我看过其他人在做类似的事情,但他们的答案似乎前面只写着一个常数。
非常感谢
您可以将Array#sort()
与适当的回调一起用于此任务
var arr = ["Joe1,345", "James,1002", "Bill,24"]; arr.sort(function (a, b) { var aa = a.split(','), bb = b.split(','); return bb[1] - aa[1]; }); console.log(arr);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.