如何在javascript中检查未定义的类型

时间:2012-10-19 11:57:47

标签: javascript jquery

  

可能重复:
  Is there a standard function to check for null, undefined, or blank variables in JavaScript?

在javascript中检查undefined类型的最佳方式是什么?我知道检查未定义类型的一种方法,即typeOf。但我必须检查是否有很多地方,所以如果有任何简短的更好的检查方法,请告诉我?

我尝试了几种方法,但没有取得成功:

    alert(undefined === "undefined");
    alert(undefined || "defined"); 

4 个答案:

答案 0 :(得分:8)

没什么新鲜的:

// either
(val === undefined)
// or
(typeof val == "undefined")

使用val || "defined"的问题是,如果valnullundefined0,{{1},则会返回“已定义” }或false

答案 1 :(得分:1)

这是你用typeof说的最好的方式。

示例:

alert(typeof variable === 'undefined')

答案 2 :(得分:0)

使用typeof val == "undefined"是最好的方法,因为undefined的值可以修改。

var x;

console.log("x == undefined => " + (x == undefined));
console.log("typeof x == 'undefined' => " + (typeof x == 'undefined'));

var undefined = 10; // for some reason, browsers allow this!
console.log('undefined overwritten to ' + undefined);

console.log("x == undefined => " + (x == undefined)); // this will return false!
console.log("typeof x == 'undefined' => " + (typeof x == 'undefined'));

答案 3 :(得分:-1)

var variable2 = variable1  || '';

如果变量1未定义,则将其设置为'',否则,它将使用变量1。