可能的重复:
Javascript === vs == :我使用哪个“等于”运算符重要吗?
JavaScript == 什么时候比 === 更有意义?
以下方法在将字符串与未定义值进行比较时有什么区别?
var x;
if(x==undefined)
{
alert(x);
}
and
if(x===undefined)
{
alert(x);
}
为什么在这种情况下我应该更喜欢第二种方法..请让我知道优点..
-
==
在测试值是否相同之前尝试将它们转换为相同类型。"5" == 5
-
===
不这样做;它要求对象具有相同类型才相等。"5" !== 5
在这种情况下,结果是:
-
x == undefined
为真,如果x
is undefined
or null
.
-
x === undefined
只有当x
is undefined
.
如果您希望同等对待 undefined 和 null,您应该更喜欢第一种方法。其常见用途之一是可选函数参数。
function greet(name, greeting) {
if (name == undefined) name = 'World';
if (greeting == undefined) greeting = 'Hello';
alert(greeting + ' ' + name);
}
greet(); // alerts "Hello World"
greet("Bob"); // alerts "Hello Bob"
greet(null, "Goodbye"); // alerts "Goodbye World"
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)