由于__proto__
是任何對(duì)象都有的屬性蹭劈,而js
里面萬物皆對(duì)象厌处,所以會(huì)形成一條__proto__
連起來的鏈條侦另,遞歸訪問__proto__
必須最終到頭,并且值為null
當(dāng)js
引擎查找對(duì)象的屬性時(shí)担映,先找到對(duì)象本身是否含有該屬性废士,如果不存在叫潦,會(huì)在原型鏈上查找蝇完,但是不會(huì)查找自身的prototype
prototype
是函數(shù)才有的屬性
function Car() {}
Car.prototype.title = "DB"
let car = new Car()
console.log(car.prototype) // undefined
console.log(car.__proto__ === Car.prototype) //true
console.log(car.constructor) // function Car() {}
console.log(Car === Car.prototype.constructor) //true
console.log(car.constructor === Car.prototype.constructor) //true