此代码返回min
,这怎么可能?
if(prices[i] == 1000 && min == 53){
if(prices[i] < min){
return min;
}
return prices[i];
}
答案 0 :(得分:5)
值是字符串。当您使用==
将它们与数字进行比较时,数字首先(内部)转换为字符串。但是,<
将两个字符串比较为字符串,因此字符串“1000”实际上小于字符串“53”,因为“1”位于“5”之前在字符集中。
答案 1 :(得分:3)
比较字符串而不是数字时会发生有趣的事情
console.log("strings", "1000" < "53")
console.log("numbers", 1000 < 53)