[英]JavaScript Coercion for Strings to Logical Operators
我可以理解 JavaScript 会将一种数据类型转换为另一种数据类型以自动匹配数据类型。 但我不明白以下结果。 请解释相同以便更好地理解。
console.log("32" > "4") //This result is showing false. when converting the number it must be true. But, why its showing as false?
console.log("32" < "4") //This result is showing true. Why?
console.log("32" > "14") // Its showing true. How?
当 javascript 比较 2 个字符串时,它会比较字符串中字符在一系列中的位置,对于数字来说是“0123456789”。
原因("32" < "4" === true)是因为4比系列中的3晚,即4大于3(JS总是从第一个字符开始比较)。 当两个字符串中的第一个字符相等时,Javascript 只会移动到第二个字符。 它执行相同的操作并返回真、假或移动到下一个字符。 这就是为什么:
“4” > “39” === 真
“32” > “31” === 真
“30” > “3” === 真
对于您的最后一个示例,我将“32”<“14”的值设为假。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.