在遍历JavaScript对象时,是否可以使用undefined作为键?

Is it possible to have undefined as a key when foreaching over a JavaScript object?

本文关键字:undefined 可以使 是否 JavaScript 遍历 对象      更新时间:2023-09-26

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

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

我的问题是key是否可以成为undefined

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