可能重复:
Is there a standard function to check for null, undefined, or blank variables in JavaScript?
在javascript中检查undefined
类型的最佳方式是什么?我知道检查未定义类型的一种方法,即typeOf
。但我必须检查是否有很多地方,所以如果有任何简短的更好的检查方法,请告诉我?
我尝试了几种方法,但没有取得成功:
alert(undefined === "undefined");
alert(undefined || "defined");
答案 0 :(得分:8)
没什么新鲜的:
// either
(val === undefined)
// or
(typeof val == "undefined")
使用val || "defined"
的问题是,如果val
为null
,undefined
,0
,{{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。