1、原型
①所有引用類型都有一個__proto__(隱式原型)屬性,屬性值是一個普通的對象
②所有函數(shù)都有一個prototype(原型)屬性,屬性值是一個普通的對象
③所有引用類型的__proto__屬性指向它構(gòu)造函數(shù)的prototype

2、原型鏈
當(dāng)訪問一個對象的某個屬性時,會先在這個對象本身屬性上查找,如果沒有找到,則會去它的__proto__隱式原型上查找,即它的構(gòu)造函數(shù)的prototype,如果還沒有找到就會再在構(gòu)造函數(shù)的prototype的__proto__中查找,這樣一層一層向上查找就會形成一個鏈?zhǔn)浇Y(jié)構(gòu),我們稱為原型鏈。

instanceof是判斷實例對象的__proto__和生成該實例的構(gòu)造函數(shù)的prototype是不是引用的同一個地址。