比较字符串时为什么使用===而不是==
这个问题在这里已经有了答案:
===
运算符确保不仅值相等,而且比较的两个项目也是相同的类型; ==
运算符只检查两个项目的值是否相等
正如评论中提到的@amnotiam,你可能也想看看抽象平等比较算法
===
用于检查类型值
var str="300";
//this gt execute
if(str==="300")
{
alert("this alert get executed");
}
//this not execute
if(str===300)
{
alert("this alert not get executed");
}
对于==
这两个代码是有效的,因为它不检查类型
//this get execute
if(str=="300")
{
alert("this alert get executed");
}
//this get execute
if(str==300)
{
alert("this alert get executed");
}
10 == '10' // true | check value: 10 equal 10
10 == 10 // true | check value: 10 equal 10
10 === '10' // false | check type: int not equal string
10 === 10 // true | check type: int equal int, check value: 10 equal 10
检查类型与否。
链接地址: http://www.djcxy.com/p/3259.html