Js检查是否未定义一个或多个变量

时间:2014-09-21 15:20:15

标签: javascript if-statement var

假设我有多个vars:

var a = 1;
var b = 2;
var c;
var d = 4;
var e;

我想检查其中一个(或更多)是否为空,在本例中为var c和var e。 是否可以一次检查所有内容?

谢谢!

2 个答案:

答案 0 :(得分:2)

这是你想要的吗?

var a = 1;
var b = 2;
var c;
var d = 4;
var e;

[a, b, c, d, e].some(function(x){return typeof x === "undefined";});

我认为javascript没有内省功能,所以你不能只找到本地范围内的所有变量。

答案 1 :(得分:1)

你不能。如果检查它们都是你的目标,那么你应该将它们全部分组。

尝试使用关联数组。

var items = {
    a:1,
    b:2,
    d:4
};

//Check empty
if(items.c === undefined){
    console.log('c is empty');
}

如果迭代项目,则只能获得已设置的变量。所以让我们尝试另一种方式。

null是另一种说明项目为空的方式,也许你真的希望变量存在。

var items = {
    a:1,
    b:2,
    c:null,
    d:4,
    e:null
};

//Check empty
for(var item in items){
    if(items[item] === null){
        console.log(item, 'is empty');
    }
}