【发布时间】:2018-01-29 17:12:33
【问题描述】:
我正在学习 javascript,但我对这个定义感到困惑。 我在 ECMA 中查找,它将构造函数定义为
创建和初始化对象的函数对象。
那么,任何函数对象都可以称为构造函数吗?
【问题讨论】:
-
构造函数可以被认为是一种定义如何创建对象的模板。函数对象可能会创建一个对象,但此时它可能与构造函数有所不同。
-
如果你按照规范去,有一部分说:函数对象不一定是构造函数,这样的非构造函数对象没有 [[Construct]] 内部方法。 示例包括箭头函数、方法、Function.prototype、生成器函数和异步函数,它们不是构造函数。
标签: javascript