您的位置:首页 > Web前端 > JavaScript

js prototype

2016-01-05 16:28 549 查看
prototype属性允许您向对象添加属性和方法prototye是全局属性

语法:object.prototype.name=value;

原型继承的定义

创建一个对象point,拥有三个属性,x,y,print为了能创建一个新的二维点,我们需要创建一个新的二维点,让_proto_属性指向point

varPoint={
x:0;
y:0,
print:function(){
console.log(this.x,this.y);
}
};
varp={x:10,y:20,_proto_:Point}
p.print();//1020


以下代码展示了js引擎如何查找属性

functiongetProperty(obj,prop){
if(obj.hasOwnProperty(prop)){
returnobj[prop];
}elseif(obj._proto_!==null){
returngetProperty(obj._proto_,prop)
}else{
returnundefined;
}
}


了解new工作原理

functionNew(f){
varn={'_proto_':f.prototype};
returnfunction(){
f.apply(n,arguments);
returnn;
}
}



                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: