织梦CMS - 轻松建站从此开始!

沙龙国际_沙龙国际亚洲第一品牌网上娱乐

当前位置: 主页 > 沙龙国际 >

javascript 原型相关一个问题?

时间:2017-07-18 03:01来源:未知 作者:admin 点击:
//codefunction Person(){}; Person.prototype.name = "Leon";Person.prototype.age = 22;Person.prototype.say = function(){ alert(this.name "," this.age);} var p1 = new Person();console.info(p1.__proto__.age = 30);console.info(p1.__proto__); //c
//code
function Person(){};
 
Person.prototype.name = "Leon";
Person.prototype.age = 22;
Person.prototype.say = function(){
  alert(this.name   ","   this.age);
}
 
var p1 = new Person();

console.info(p1.__proto__.age = 30);
console.info(p1.__proto__);
//console
30
Person { name="Leon",  age=30,  say=function()}

记得书中描述是不可通过__proto__修改原型的,为什么我自己测试完了,结果却是可以的?

我们通过new Person()创建了一个Person对象p1,此时会在内存中为p1对象分配一块内存空间,在p1的内存空间中会有一个_proto_内部属性,这个内部属性是不能被访问的,它也指向Person原型。

需要特别注意的是:原型中的值是不会被替换的,仅仅只是在属性查找时被对象自己空间中的同名属性所覆盖。

织梦二维码生成器
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
栏目列表
推荐内容