在对JavaScript对象进行预处理时,是否可以将undefined作为键?

时间:2015-07-20 17:50:27

标签: javascript undefined

我一直在进行代码审查,我看到这样的代码:

var a = { ... }; // in reality, an actual object filled with key-value pairs
for (var key in a) {
    if (!angular.isUndefined(key)) { // does this ever fail?
        do.stuff();
    }
}

我的问题是key是否可能未定义(或根据true评估为angular.isUndefined)。这似乎不太可能,因为当我尝试执行以下操作时:

var a = { undefined: 'hello' }

事实证明undefined实际上是String

1 个答案:

答案 0 :(得分:5)

  

我的问题是key是否可以undefined

没有。对象的所有键(属性名称)都将转换为字符串。