Javascript 中的函数是一个对象。
在函数上运行 typeof 时,为什么它返回值“function”,而不是“object”?
var objLit = {}
console.log(typeof objLit); // "object"
function hello() {
console.log("hello world");
}
console.log(typeof hello); // "function"
最佳答案
因为这就是规范所说的。尽管所有函数都是对象,但在函数上使用 typeof
时将返回 'function'
而不是 'object'
。请参阅table :
Type of val Result: Object (does not implement [[Call]]) "object" Object (implements [[Call]]) "function"
(函数有内部方法 [[Call]];非函数没有。)
关于javascript - 当 typeof 在函数上运行时,它返回 "function"作为类型。为什么它不返回 "object"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58368604/