遍历 JavaScript 对象时是否可以将 undefined 作为键?
Is it possible to have undefined as a key when foreaching over a JavaScript object?
我一直在进行代码审查,我看到这样的代码:
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
是否可以未定义(或根据 angular.isUndefined
评估为 true
)。这似乎不太可能,因为当我尝试执行以下操作时:
var a = { undefined: 'hello' }
原来undefined
其实是一个String
.
My question is whether key
can ever be 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
是否可以未定义(或根据 angular.isUndefined
评估为 true
)。这似乎不太可能,因为当我尝试执行以下操作时:
var a = { undefined: 'hello' }
原来undefined
其实是一个String
.
My question is whether
key
can ever beundefined
没有。对象的所有键(属性 名称)都转换为字符串。