1.instanceOf原理javascript
檢測右邊構造函數的prototype是否在左邊對象的原型鏈上,在返回true,不在返回falsejava
例:function Persion(name,age){函數
this.name = name;this
this.age = age;prototype
} ; 對象
let p = new Persion()blog
console.log( p instanceOf Persion ) //trueip
對象p的原型鏈爲:p.__proto__ == Persion.prototype Persion.prototype .__proto__ == Object.prototype Object.prototype.__proto__ == null原型鏈
2.new關鍵字原理原型
當執行代碼new Persion()時,會進行如下操做:
僞代碼實現以下:
let obj = {}; obj.__proto__ = Persion.prototype; Persion.call(obj, 'jake', 30); return obj;