<script> alert([] instanceof Array) alert([].__proto__ === Array.prototype) alert({} instanceof Object) alert({}.__proto__ === Object.prototype) </script>
?
代码如上。
在IE(6,8)中弹出结果为true,false,true,false
在FF中弹出结果为true,true,true,true
请问这是怎么回事????
?
另,上面的4句代码在FF的firebug中测试时,有时全部弹出为false。有时全部弹出为true。本人测试了不止一次,请问是怎么回事???
?
谢谢
?
1 楼
冰冷缠绵
2011-09-13
对象通过一个内部属性绑定到它的原型.在Firefox,Safari和Chrome浏览器中,这个属性_proto_对开发者可见,而在其他浏览器却不允许脚本访问此属性.---引自<<高效JavaScript>>中27页.
2 楼
tan4836128
2011-09-13
你应该发帖,不应该是博客。问题有些迷惑,跟踪了,不过实际遇到的情况不多
3 楼
北极的。鱼
2011-09-14
冰冷缠绵 写道
对象通过一个内部属性绑定到它的原型.在Firefox,Safari和Chrome浏览器中,这个属性_proto_对开发者可见,而在其他浏览器却不允许脚本访问此属性.---引自<<高效JavaScript>>中27页.
======================================
谢谢,不过还有个问题。
为什么同一段代码:
alert([] instanceof Array)
alert([].__proto__ === Array.prototype)
alert({} instanceof Object)
alert({}.__proto__ === Object.prototype)
在firebug中有时全为true,有时全为false呢??