1.instanceof用於判斷引用類型屬於哪一個構造函數的方法。html
那麼,咱們如何準確的判斷一個變量是數組類型呢?java
var arr = [];數組
arr instanceof Array //結果爲true,這樣判斷函數
有的人可能會想到 typeof arr,但typeof是沒法判斷是不是數組類型的,包括objectthis
2.原型規則spa
1)全部的引用類型(數組、對象、函數)都具備對象特性,便可以自由擴展屬性(除了「null」外)prototype
2)全部的引用類型(數組、對象、函數)都有一個_proto_屬性,屬性值是一個普通的對象code
3)全部的函數,都有一個prototype屬性,屬性值也是一個普通的對象htm
4)全部的引用類型(數組、對象、函數),_proto_屬性值指向它的構造函數的prototype屬性值對象
5)當試圖獲得一個對象的某個屬性時,若是這個對象自己沒有這個屬性,那麼會去它的_proto_(即它的構造函數的prototype)中尋找
全部的引用類型都有一個_proto_屬性,全部的函數都有一個prototype屬性
3.描述new一個對象的過程
4.寫一個原型鏈繼承的例子
1 //一個封裝DOM查詢的例子 2 function Elem(id){ 3 this.elem = document.getElementById(id) 4 } 5 6 Elem.prototype.html = function (val) { 7 var elem = this.elem 8 if (val) { 9 elem.innerHTML = val 10 return this //鏈式操做 11 }else { 12 return elem.innerHTML 13 } 14 } 15 16 Elem.prototype.on = function (type,fn) { 17 var elem = this.elem 18 elem.addEventListener(type,fn) 19 //return this 20 } 21 22 var div1 = new Elem ('div1') 23 24 div1.html('<p>hello 博客園</p>').on('click',function () { 25 alert('clicked') 26 })//.html('<p>javacsript</p>')