比较未定义的字符串和未定义的类型

时间:2017-06-09 15:17:23

标签: javascript

我正在研究一个程序并遇到一种情况,如果变量数据类型未定义,我想短路语句。我将typeof(var)与未定义的关键字进行了比较,该关键字在所有情况下都返回false。

console.log(undefined == "undefined"); //false

由于类型强制不应该被视为同样的事情?我在这里缺少什么?

2 个答案:

答案 0 :(得分:0)

使用类型时,您需要使用typeof(undefined)

typeof(undefined) == "undefined" // true
undefined == "undefined" // false

这是一个工作示例。



document.getElementById("test1").value = typeof(undefined) == "undefined";
document.getElementById("test2").value = undefined == "undefined";

typeof(undefined) == "undefined"
<br/>
<input id="test1"/>
<br/>
undefined == "undefined"
<br/>
<input id="test2"/>
&#13;
&#13;
&#13;

答案 1 :(得分:0)

("undefined" === typeof variable) //True

typeof将返回一个字符串。