JavaScript 访问原型
■知识点
原型实际上就是一个普通对象,继承了 Object类,由JavaScript自动创建并依附于每个函数身上。 访问原型对象有3种方法,简单说明如下。
obj.__proto__
obj .constructor.prototype
Object.getPrototypeOf(obj)
其中,obj表示一个实例对象,constructor表示构造函数。
__proto__ (前后各两个下划线)是一个私有属性,可读可写,与prototype属性相同,都可以访问原型对象。Object.getPrototypeOf(obj)是一个静态函数,参数为实例对象,返回值是参数对象的原型对象。
■实例设计
下面的代码创建一个空构造函数,然后实例化,分别使用上述3种方法访问实例对象的原型。
var F = function (){}; //构造函数
var obj = new F(); //实例化
var protol = Object.getPrototypeOf( obj ); //引用原型
var proto2 = obj._ _proto_ _; //引用原型,注意,IE暂不支持
var proto3 = obj.constructor.prototype; //引用原型
var proto4 = F.prototype; //引用原型
console.log( protol === proto2 ); //true
console.log( protol === proto3 ); //true
console.log( protol === proto4 ); //true
console.log( proto2 === proto3 ); //true
console.log( proto2 === proto4 ); //true
console.log( proto3 === proto4 ); //true
点击加载更多评论>>