$.ajax({
url: '/seatlt',
type: 'POST',
dataType: 'JSON',
data: data,
async: true,
crossDomain: true,
success: function(res) {
$.each(res, function(i, v) {
$.each(v, function(j, w) {
var ggg = w.name;
vvv.push(ggg);
})
})
}
})
在 console.log(vvv) 中,我得到的输出为:
["22"、"A"、"23"、"B"、"24"、"C"、"25"、"D"、"26"、"E"、"27"、"F ”、“28”、“29”、“30”、“31”、“10”、“32”、“11”、“33”、“12”、“34”、“13”、“35”、 “14”、“15”、“16”、“17”、“18”、“19”、“1”、“2”、“3”、“4”、“5”、“6”、“7” ”、“8”、“9”、“20”、“21”]。
但我希望输出为:
["A"、"B"、"C"、"D"、"E"、"F"、"1"、"2"、"3"、"4"、"5"、"6 ”、“7”、“8”、“9”、“10”、“11”、“12”、“13”、“14”、“15”、“16”、“17”、“18”、 “19”、“20”、“21”、“22”、“23”、“24”、“25”、“26”、“27”、“28”、“29”、“30”、“31” ”、“32”、“33”、“34”、“35”]。
最佳答案
我是盲写的,但这应该可以解决问题。
res.sort(function(a, b) {
var AisNumber = a % 1 === 0;
var BisNumber = b % 1 === 0;
if (AisNumber && BisNumber) {
return Number(a) - Number(b);
} else if (AisNumber && !BisNumber) {
return 1;
} else if (!AisNumber && BisNumber) {
return -1;
} else {
if (a < b) {
return -1;
} else if (a > b) {
return 1;
} else {
return 0;
}
}
});
关于javascript - 使用javascript对数组进行排序由字母和数字组成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48415968/