console.log(Object.prototype); // -> "{}"
Run Code Online (Sandbox Code Playgroud)
我期望console.log(Object.prototype)输出一些属性或类似"toString"的方法.
为什么不呢?
默认方法未标记为可枚举,因此在查看时不显示Object.prototype.
原因很简单:当查看某个对象或更重要的迭代它的属性时for(var prop in object),通常不希望看到任何默认方法.当然,人们总是可以obj.hasOwnProperty(prop)在这样的循环中使用检查,但是通过知道Object.prototype默认情况下没有任何可枚举的东西(并且良好的代码也不会向其添加可枚举的属性),这是非常舒适的.
| 归档时间: |
|
| 查看次数: |
60 次 |
| 最近记录: |