Javascript函数和对象混淆

时间:2017-10-31 18:18:31

标签: javascript

在Javascript中,我们有两个基本的构建块,称为函数和对象。但我对函数是特殊类型的对象这个短语感到有点困惑。无论如何,在Javascript:

我们创建这样的函数:

function foo(){}

现在上面声明的函数也像下面的对象一样:

foo.staticMethod = function(){}

确定。我明白了。

现在我们同样创建这样的对象:

var obj = new Object() // Not using object literal here

这意味着,我们需要一个函数构造函数Object来创建一个空对象。

但功能也是对象。如何????

所以我的简单问题是,如果Object用于创建任何新对象,那么它如何成为一个对象本身,因为它接受一个属性Object.prototype或者我应该说一个函数如何是一个对象?

1 个答案:

答案 0 :(得分:0)

function Object(){
  return {};
}