如果我将变量设置为 0,我会得到奇怪的行为,即与“”(空)的比较为真。如何检查变量是否真的为空?
tmp = 0;
if ( tmp != "")
{
//do something - This is where the code goes.
}
else
{
//isEmpty - I would expect to be here
}
如果我将变量设置为 0,我会得到奇怪的行为,即与“”(空)的比较为真。如何检查变量是否真的为空?
tmp = 0;
if ( tmp != "")
{
//do something - This is where the code goes.
}
else
{
//isEmpty - I would expect to be here
}
使用严格的比较运算符
===
和!==
使用==
and !=
(称为抽象比较运算符),
如果两个操作数的类型不同,JavaScript 会尝试将操作数转换为适当的类型以进行比较。
如果为空,则要检查变量是否尚未定义,请使用:
if (typeof tmp !== "undefined") {
// it exists!
}
你是什么意思empty variable
?如果你的意思是一个空字符串,那么你应该使用!==
它来检查它。
if (tmp !== "")
JavaScript 隐式地将值转换为其他类型。要检查类型,请使用!==
运算符:
if ( tmp !== "")
在 JavaScript 中,除了、 、0
和NaN
之外的所有内容都被认为是错误的。"" 被认为是.undefined
false
null
true
if (tmp) {
}
如果变量包含除、、和之外的任何值,if
则将执行上述操作。0
NaN
undefined
false
null
如果tmp
是,string
那么您可以使用以下代码:
if (tmp !== "") {
}
===
和!==
运算符在不进行类型转换的情况下进行比较。