建立物件的方法
// 第一種方式:字面量
var o1 =
;var o2 =
newobject()
;// 第二種方式:建構函式
varm
=function
(name)
;var o3 =
newm
('o3');
// 第三種方式:object.create
原型、建構函式、例項、原型鏈
結合上面的例子
m
.prototype.constructor===
m//true
o3.__proto__===
m.prototype//true
m.__proto__===function.prototype//true m本身沒有__proto__屬性,是順著原型鏈向上找的
object.prototype是原型鏈的頂端
instanceof原理
一直沿著原型鏈想上找,如果有就返回true
我的這篇文章中有演示**
new運算子
原理如下
var
new2
=function
(func)
else
};
先指定傳入建構函式的原型物件
再執行func指定返回結果為k
將func方法中的this指向func.prototype
然後判斷k是否是物件,如果是則返回k,如果不是則返回傳入建構函式的原型物件的空的例項物件。
js基礎 原型和原型鏈
原型是js中的乙個重要知識點,之前一直都原型一知半解,最近在做js的基礎梳理,感覺很有必要做一下關於原型和原型鏈的總結。一 普通物件和函式物件 了解原型,所有我們需要知道js中變數歸根到底是啥,可能大家都聽說過 萬物皆物件。但物件也會有一定區分,存在 普通物件 和 函式物件,區分規則 通過 new ...
js基礎之原型和原型鏈 原型 1
原型其實就是function的乙個屬性,它定義了建構函式製造出的物件的共有祖先。通過該建構函式產生的物件,可以繼承該原型的屬性和方法。原型也是物件 簡單來說,我們建立的每乙個建構函式自出生開始就自動的帶有這個屬性,這個屬性叫做prototype。這個屬性是乙個指標,指向乙個物件。這個物件中的屬性和方...
JS基礎丨 13 原型及原型鏈
01.建構函式 01.建構函式的建立 01.普通函式用new關鍵字建立 02.new 建構函式 不佔記憶體 03.建構函式即是類 04.寫在建構函式中的屬性為私有化 05.寫在原型中的屬性與方法為共有的 02.建構函式原型上的屬性及方法 01.字面量建立建構函式的原型屬性及方法 02.構造器指回自身...