猿问

JS - 数组元素比较大小问题

如图所示,定义a、b两个数组,然后进行循环比较,c数组存放两个数组比较后的那个较小的值,结果c数组的第一个值是那个较大的值,剩下的才是较小的值,请问这是什么原因?

备注:(代码如下)

var a = ["429", "14302", "1", "0", "0", "159", "20", "0"];
var b = ["1542", "46886", "4", "0", "0", "644", "2", "0"];
var c = [];
for(var i = 0, length = a.length; i < length; i++) {

if(a[i] < b[i]) {
    c.push(a[i]);
} else {
    c.push(b[i]);
}

}
console.log(c);


MYYA
浏览 3841回答 1
1回答

慕标琳琳

先将字符串转成数字再比较 否则是按&nbsp;ASCII&nbsp;码比较大小console.log('429' < '14302'); // falseconsole.log(Number('429') < Number('14302')) // true
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答