在js中,每乙個建立的的函式都會有乙個prototype
屬性,這個屬性指向乙個物件,這個物件就是原型物件
functionchrome瀏覽器下的結果:lla(){}
console.log(lla.prototype);
首先,當你用new 呼叫了乙個函式,就會建立乙個物件例項然後返回這個物件
可以看到a
是乙個名叫lla
的物件,有乙個__proto__
的屬性(後面介紹),這裡可以認為這個物件是空的;為什麼是空的呢?因為建構函式裡面是空的;
如何才能讓它不空呢?
ok,芳齡18的帥鍋粗線了。。咳咳。
建構函式裡面的this,在new 呼叫的時候是指向b的,所以b裡面有兩個屬性,age
,name
;回到問題中去,原型物件有什麼用?
b是例項化的乙個物件,通過上面的**我們發現b並沒有發生變化,然而卻能訪問原型物件上
的方法,所以。。原型物件的作用就出來啦,你可以為你的例項化物件新增各種共享的屬性和
方法,這些屬性和方法是所有例項共享的。
JS 物件 JS原型 原型鏈
參考學習 js物件 構造器函式 建立物件的函式。物件分為普通物件和函式物件。所有物件都有 proto 屬性 函式物件不止有 proto 屬性,還有prototype屬性 稱為原型物件 1.new function 產生的物件都是函式物件。2.所有函式物件的 proto 都指向function.pro...
JS原型物件
原型prototype 將函式定義在全域性作用域中的缺點 1.會汙染全域性作用域的命名空間,如 函式functiona 那麼在全域性作用域中就不能再出現functiona這個命名了。2.定義在全域性作用域中不安全。因此,就用到了主角 原型 1.所有的函式都有原型物件 2.當函式以建構函式的形式呼叫時...
js物件 原型
物件 在js裡,除了字串,數字,boolean,null和undefined之外,其他的js值都是物件。js中物件可以分為普通物件和函式物件。普通物件 是除函式物件外的,都可以成為普通物件。函式物件 是通過new function產生的物件。這一種是最常見的定義函式的方法 function foo1...