Appearance
构造器
在 JavaScript 中,构造器(Constructor)是一种特殊的函数,用于创建并初始化一个对象。通常情况下,构造器函数名称的首字母大写,以便与普通函数进行区分。
js
// 普通函数
function fn() {}
// 构造器
function Person() {}
new
- 通过 new 关键字调用构造器时,会以构造器原型为基础创建一个新的对象,并将其作为 this 上下文传递给构造函数。
- 在构造器函数内部,可以使用 this 对象来添加属性和方法。
- 最后,如果没有显式返回其他对象,则构造器将返回这个新创建的对象。
js
function Person() {
this.name = '张三'
}
function create(Person, ...args) {
const obj = Object.create(Person.prototype)
Person.apply(obj, args)
return obj
}
const instanceNew = new Person()
const instanceCreate = create(Person)
在上述代码中,Person 是一个构造器函数,分别通过 new 和 create 来创建对象, instanceNew 和 instanceCreate 结果是一致的。其中 create 函数描述了 new 操作的基本过程。