在javascript中的if语句中,==和==之间有什么区别?
可能重复:在javascript中的if语句中,==和==之间有什么区别?,javascript,jquery,if-statement,conditional-statements,Javascript,Jquery,If Statement,Conditional Statements,可能重复: 在一些JavaScriptif语句中,我看到了==与标准=相反的用法 这两者有什么区别?我应该用其中一个而不是另一个吗 e、 g 与之相比: if (variable === 'string') { return; } ==是一个严格的比较(也检查类型),而==则进行更宽松的比较 例如: var a = 'test'; if (a == true) { // this will be true } if ( a === true) { // this will n
在一些JavaScript
if
语句中,我看到了==
与标准=
相反的用法
这两者有什么区别?我应该用其中一个而不是另一个吗
e、 g
与之相比:
if (variable === 'string') {
return;
}
==
是一个严格的比较(也检查类型),而==
则进行更宽松的比较
例如:
var a = 'test';
if (a == true) {
// this will be true
}
if ( a === true) {
// this will not be true
}
另一个例子:
var b = '0';
if ( b == 0){
// this will be true
}
if ( b === 0 ){
// this will not be true
}
尤其是在比较falsy值时,这一点非常重要。在Javascript中,以下所有内容将被视为false,并进行轻松比较:
* false
* null
* undefined
* empty string ''
* number 0
* NaN
==还检查类型是否相等
例如,
1==“1”
为true,但1==“1”
为false运算符“==”并不意味着自动转换。为什么有人想否决这个问题?在js学习的早期阶段,人们经常会遇到这个问题。谢谢,现在我看到了重复的问题,我理解了其中的区别。在发布问题之前,我试着在网站上搜索“==”和“==”,但什么也没找到。为什么人们一直在投票这个问题?你可以尝试在这个网站顶部的搜索框中搜索===看看会出现什么。我可以建议你买一个这样的副本:Strict being,匹配值和类型,而不仅仅是值:-)例如,'136'==136将返回true,但是'136'==136将不是很好的解释谢谢,这个网站上的文档也非常有用。
* false
* null
* undefined
* empty string ''
* number 0
* NaN