JavaScript 中的对象构造函数

当你需要创建许多相同类型的对象时,JavaScript 提供了几种高效的方法。

构造函数

构造函数是用于初始化新对象的函数。请遵循以下规则以避免错误:

默认值

你可以在构造函数中设置默认值。这可以确保即使你跳过了一些细节,你的对象仍然是有效的。

示例:

function Person(name = "Unknown", age = 0) {
    this.name = name;
    this.age = age;
}

如果你调用 new Person()name 将变为 "Unknown",age 将变为 0。

Object.create()

你可以使用 Object.create() 基于现有对象创建一个新对象。这使用了基于原型的继承。新对象不是复制数据,而是链接到原始原型。

内存优化

不要将方法直接放在构造函数内部。如果你这样做,每个新对象都会拥有该方法的一个副本,这会浪费内存。

相反,应该将方法添加到原型(prototype)上。这样,所有对象都可以共享同一个方法版本。

示例:

Person.prototype.greet = function() {
    console.log("Hello " + this.name);
};

继承

类(Classes)允许一个类继承另一个类。在子类中使用 super() 关键字来调用父类构造函数。这使得子类可以访问父类的属性。

使用构造函数的好处:

Source: https://www.geeksforgeeks.org/javascript/js-constructor-method/ Source: https://www.w3schools.com/js/js_object_constructors.asp

Full post: https://dev.to/kamalesh_ar_6252544786997/object-constructors-in-javascript-2e96