JavaScript中Object和Function的關(guān)系小結(jié)
更新時間:2009年09月26日 02:50:48 作者:
JavaScript 中 Object 和 Function 的關(guān)系是微妙的,他們互為對方的一個實例。
Function instanceof Object 和 Object instanceof Function 都是 true
1。我們可以認(rèn)為 Object 是一個特殊的“類”,而這里的“類”即:Function
于是便可以理解為: Object = Function () {} 或 Object = new Function(); 即:Object 是 Function 的一個實例,所以,Object 原型鏈中便包含 Function.prototype,得出: Function.prototype.isPrototypeOf(Object) 為 true
2。同時,js中,所有對象(不包括js語言外部對象)都可視為是 Object 的一個實例, Function 不例外,F(xiàn)unction.prototype 亦不例外,于是有 Function = new Object(); Function.prototype = new Object(), 于是 Object.prototype.isPrototypeOf(Function) 和 Object.prototype.isPrototypeOf(Function.prototype) 都為 true 了
3。補充:Function 本身也是一個“類”,然而,所有“類”都是Funciton的實例,于是 Function instanceof Function; 為true。同時,所有對象都是 Object 類的實例,Object 本身也是一個對象,所有又有 Object instanceof Object 也為 true。另外,還可以認(rèn)為 Funciton 類型是 Object 類型的一個“派生類”,class Function 繼承了class Object ,是 class Object 的一個“子類”。
1。我們可以認(rèn)為 Object 是一個特殊的“類”,而這里的“類”即:Function
于是便可以理解為: Object = Function () {} 或 Object = new Function(); 即:Object 是 Function 的一個實例,所以,Object 原型鏈中便包含 Function.prototype,得出: Function.prototype.isPrototypeOf(Object) 為 true
2。同時,js中,所有對象(不包括js語言外部對象)都可視為是 Object 的一個實例, Function 不例外,F(xiàn)unction.prototype 亦不例外,于是有 Function = new Object(); Function.prototype = new Object(), 于是 Object.prototype.isPrototypeOf(Function) 和 Object.prototype.isPrototypeOf(Function.prototype) 都為 true 了
3。補充:Function 本身也是一個“類”,然而,所有“類”都是Funciton的實例,于是 Function instanceof Function; 為true。同時,所有對象都是 Object 類的實例,Object 本身也是一個對象,所有又有 Object instanceof Object 也為 true。另外,還可以認(rèn)為 Funciton 類型是 Object 類型的一個“派生類”,class Function 繼承了class Object ,是 class Object 的一個“子類”。
相關(guān)文章
JavaScript創(chuàng)建對象方式總結(jié)【工廠模式、構(gòu)造函數(shù)模式、原型模式等】
這篇文章主要介紹了JavaScript創(chuàng)建對象方式,結(jié)合實例形式總結(jié)分析了工廠模式、構(gòu)造函數(shù)模式、原型模式等各種常見的javascript對象創(chuàng)建方式與相關(guān)操作注意事項,需要的朋友可以參考下2018-12-12javascript 面向?qū)ο髮崙?zhàn)思想分享
萬物皆對象,所以,任何事物都是有特征(屬性)和動作(方法)的,一般拿到一份需求分檔,或者你瀏覽一個網(wǎng)頁看到一個畫面的時候,腦子里就要有提煉出來的屬性和方法的能力,那你才是合格的2017-09-09JSQL 基于客戶端的成績統(tǒng)計實現(xiàn)方法
JSQL應(yīng)用案例 基于客戶端的成績統(tǒng)計,下面我把整個example的代碼貼出來,歡迎拍磚2010-05-05基于JavaScript實現(xiàn)熔巖燈效果導(dǎo)航菜單
這篇文章主要介紹了基于JavaScript實現(xiàn)熔巖燈效果導(dǎo)航菜單,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-01-01echarts圖形x、y坐標(biāo)文字設(shè)置間隔顯示及相關(guān)問題詳解
最近在做一個web的數(shù)據(jù)統(tǒng)計部分用到了Echart,下面這篇文章主要給大家介紹了關(guān)于echarts圖形x、y坐標(biāo)文字設(shè)置間隔顯示及相關(guān)問題的相關(guān)資料,文中通過實例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-08-08微信小程序自定義tabbar custom-tab-bar 6s出不來解決方案(cover-view不兼容)
這篇文章主要介紹了微信小程序自定義tabbar custom-tab-bar 6s出不來解決方案,cover-view不兼容問題,需要的朋友可以參考下2019-11-11