如下是我的對js原型鏈的理解javascript
問:說說原型鏈java
答:在js中,全部的對象是由函數構造而來的,全部的函數都有一個prototype屬性,全部的對象都有一個隱式屬性__proto__,而全部的函數也能夠看做是對象。某個實例的隱式屬性__proto__對會指向構造這個實例的函數原型prototype,而全部的函數或對象都是由js內置的Function函數或Object函數構造而來的,全部的對象或函數的隱式屬性__proto__會指向內置的Function的prototype或Object的prototype,而全部的函數均可以看做是對象,因此Function.__proto__ 指向 Object.prototype,而Object.prototype.__proto__ 指向null函數
例子:spa
對象:prototype
let person = {name:'xiaoren',age:24} person.__proto__ === Object.prototype Object.prototype.__proto__ === null
函數:code
function f () {} let f1 = new f() f.prototype.__proto__ === Function.prototype.__proto__ Function.prototype.__proto__ === Object.prototype Object.prototype.__proto__ === null f1.__proto__ === f.prototype f.prototype.__proto__ === Function.prototype.__proto__ Function.prototype.__proto__ === Object.prototype Object.prototype.__proto__ === null