为什么不将“函数”视为javascript中的数据类型?

时间:2014-10-13 16:19:50

标签: javascript

MSDN中为javascript列出的数据类型是Number,String,Boolean,Object,Array,Null,Undefined。但是,当您执行typeof function时,其类型是函数。

为什么会出现这种情况,以及数据类型的定义是什么?

1 个答案:

答案 0 :(得分:3)

函数只是JavaScript中的对象。但区别在于一个名为[[Call]]的内部属性,它将它们与普通对象区分开来。当typeof用于对象时,如果它找到[[Call]]属性,则它返回字符串“function”。

可以在typeof的{​​{3}}中找到此行为。