javascript prototype

 1 <script>
 2 var Person=function(){}
 3 var p=new Person();
 4 console.log(p.__proto__==Person.prototype)//true
 5 //创建对象的三个步骤
 6 /**
 7 *1.var p={}
 8  2.p.__proto__=Person.prototype
 9  3.Person.call(this);
10 */
11 Person.prototype.say=function(){console.log("person say")}
12 /**
13 每个对象内部都存在一个__proto__,当我们访问一个属性的时候,如果内部
14 不存在,则会去__proto__去找,而__proto__又会去她自己的__proto__去找
15 默认__proto__不公开,火狐是例外
16 */
17 //p.say();
18 //复杂例子
19 Person.prototype.salary=5000;
20 var Programmer=function(){};
21 Programmer.prototype=new Person();
22 Programmer.prototype.writeCode = function () {
23             console.log("programmer writes code");
24         };
25 Programmer.prototype.salary=500;
26 
27 p=new Programmer();//p.__proto__==Programmer.prototype p.__proto__.__proto__=Person.prototype
28 p.say();
29 p.writeCode();
30 console.log(p.salary);
31 //通过prototype可以实现javascript的继承
32 
33 </script>

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值