首页 > 编程语言 > 详细

Javascript中获取对象的原型对象

时间:2015-01-29 12:52:53      阅读:236      评论:0      收藏:0      [点我收藏+]

在Javascript中,如果我们有一个对象但是又不知道它的构造函数时,如何获取它的原型对象呢?

在Chrome中或是FireFox浏览器中,我们可以直接使用对象的__proto__属性获取它的原型对象。

<!-- lang: js -->
function F(){};
var foo = new F();
alert(foo.__proto__ == F.prototype);

但是,__proto__属性在IE浏览器中一直到IE11才被支持。

那么在不支持__proto__属性的浏览器中,我们怎么得到对象的原型对象呢?可以通过constructor间接得到。

<!-- lang: js -->
function F(){};
var foo = new F();
alert(foo.constructor.prototype == F.prototype);

constructor属性不是对象自己的属性,而是顺着原型链向上从原型对象中获取的。这个属性指向的是这个原型对象所对应的构造函数。而构造函数的prototype属性指向了原型对象, 所以这样我们就可以间接得到了。

Javascript中获取对象的原型对象

原文:http://my.oschina.net/nswish/blog/373075

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!