55.JavaScript原型,原型鏈 ? 有什麼特點?
阿新 • • 發佈:2020-08-11
JavaScript原型,原型鏈 ? 有什麼特點?
每個物件都會在其內部初始化一個屬性,就是prototype(原型),當我們訪問一個物件的屬性時, 如果這個物件內部不存在這個屬性,那麼他就會去prototype裡找這個屬性,這個prototype又會有自己的prototype, 於是就這樣一直找下去,也就是我們平時所說的原型鏈的概念。 關係:instance.constructor.prototype=instance.__proto__特點: JavaScript物件是通過引用來傳遞的,我們建立的每個新物件實體中並沒有一份屬於自己的原型副本。當我們修改原型時,與之相關的物件也會繼承這一改變。
1 2 3 4 5 6 7 8 9 10 |
function Func(){}
Func.prototype.name = "Sean" ;
Func.prototype.getInfo = function () {
return this .name;
}
var person = new Func(); // 現在可以參考
var person = Object.create(oldObject); console.log(person.getInfo()); //它擁有了Func的屬性和方法
//"Sean"
console.log(Func.prototype); // Func { name="Sean", getInfo=function()}
|