|
在《理解Javascript_08_函數對象》中講解了很多函數對象的問題,同時也留下了許多疑問,今天讓我們來解答部分問題。
注:理論過于深入,本人不改保證所有的理論都是正確的,但經過多方測試還未發現實際代碼與理論沖突的問題。如有錯誤,望高人指點!
Function
首先回顧一下函數對象的概念,函數就是對象,代表函數的對象就是函數對象。所有的函數對象是被Function這個函數對象構造出來的。也就是說,Function是最頂層的構造器。它構造了系統中所有的對象,包括用戶自定義對象,系統內置對象,甚至包括它自已。這也表明Function具有自舉性(自已構造自己的能力)。這也間接決定了Function的[[call]]和[[constructor]]邏輯相同。
function Foo() {};var foo = new Foo();//Foo為foo的構造函數alert(foo instanceof Foo); // true//但是Function并不是foo的構造函數alert(foo instanceof Function); // false//Function為Foo的構造函數alert(Foo instanceof Function);//true
it知識庫:理解Javascript_09_Function與Object,轉載需保留來源!
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。