Ran*_*lue 4 javascript properties
关于for- in循环我有点困惑:
window.hasOwnProperty(undefined) // Returns true
Run Code Online (Sandbox Code Playgroud)
和
undefined in window // Returns true
Run Code Online (Sandbox Code Playgroud)
但下列情况不能打印Undefined is in window!
for(a in window) {
if(a === 'undefined')
console.log('Undefined is in window!');
}
Run Code Online (Sandbox Code Playgroud)
为什么没有undefined出现在for- in循环?
这不是一个可枚举的财产.在现代JavaScript引擎中,您可以在自己的对象中控制它,但几乎总是如此(可能不是在每个解释器中)"本机"对象可以"隐藏" for ... in迭代中的属性.
您可以Object.defineProperty()在MDN上阅读.我不确定是否会有一种语法(在Harmony中)将属性标记为对象文字中的不可枚举.
| 归档时间: |
|
| 查看次数: |
67 次 |
| 最近记录: |