//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__);//console30Person { name="Leon", age=30, say=function()}記得書(shū)中描述是不可通過(guò)__proto__修改原型的,為什么我自己測(cè)試完了,結(jié)果卻是可以的?我們通過(guò)new Person()創(chuàng)建了一個(gè)Person對(duì)象p1,此時(shí)會(huì)在內(nèi)存中為p1對(duì)象分配一塊內(nèi)存空間,在p1的內(nèi)存空間中會(huì)有一個(gè)_proto_內(nèi)部屬性,這個(gè)內(nèi)部屬性是不能被訪問(wèn)的,它也指向Person原型。需要特別注意的是:原型中的值是不會(huì)被替換的,僅僅只是在屬性查找時(shí)被對(duì)象自己空間中的同名屬性所覆蓋。
javascript 原型相關(guān)一個(gè)問(wèn)題?
三國(guó)紛爭(zhēng)
2018-10-09 13:35:25