因此,无论您是从function
还是es6 class
还是base class
进行构建,都应该初始化(现在让我们忽略短手构造函数):
const Fruit = function(name) {this.name = name}
class Ball {
constructor(color) {this.color = color}
}
const apple = new Fruit('apple')
const red_ball = new Ball('red')
const ob = new Object()
const arr = new Array()
但是,如果我在所有陈述中杀死了上面的new
关键字,那么就是这样:
Class
未捕获的TypeError:如果没有' new'
,则无法调用类构造函数A.
Function
( Es5 class )
Undefined
Array / Base Classes
- 正确初始化!但为什么?
[]
或{}
这可能是一个非常愚蠢的问题,但我找不到任何关于这种情况的参考,但这种行为似乎一致适用于Chrome,Firefox,Edge和Node.js