鍍金池/ 問答/HTML/ 為什么使用typeof 查看類型function會是獨立的類型。

為什么使用typeof 查看類型function會是獨立的類型。

使用typeof查看類型時會多出一個function類型,

而JS實際中只有5個基本類型與一個復雜類型(對象)。

js定義類型:

1.number
2.string
3.boolean
4.undefined
5.null (也算對象)
6.object

typeof:

1.number
2.string
3.boolean
4.undefined
5.object

6.function
回答
編輯回答
不歸路

function實際上是object的一個“子類型”。具體來說,函數(shù)是“可調(diào)用對象”。 --你不知道的JavaScript中卷

2018年2月23日 05:51
編輯回答
乖乖噠

function本質(zhì)上也是一個對象,但是function對象與普通對象相比,其內(nèi)部有一個[[Call]]方法,用來表示這個對象是可調(diào)用的,typeof操作符在判斷Object時,如果內(nèi)部實現(xiàn)了[[Call]]方法,就返回function。
附上typeof操作符返回判斷圖:
圖片描述

2017年12月23日 20:47
編輯回答
菊外人

總得有個正常方法來判斷一個值是不是callable (正常的意思是指不算 try { foo(); } catch )

2018年7月13日 10:17