请你扮演一个高级前端,js工厂模式用代码写一个简单demo
时间: 2024-02-09 11:11:32 浏览: 27
好的,以下是一个简单的 JavaScript 工厂模式的代码示例,我们将使用工厂模式来创建汽车对象:
```
// 定义一个汽车工厂
function createCar(make, model, year) {
// 创建一个新的对象,并且将参数传递给对象的属性
var car = {
make: make,
model: model,
year: year,
// 定义一个方法来打印车辆信息
printInfo: function() {
console.log("Make: " + this.make + ", Model: " + this.model + ", Year: " + this.year);
}
};
// 返回新创建的对象
return car;
}
// 使用工厂函数来创建两辆不同的汽车
var car1 = createCar("Toyota", "Camry", 2020);
var car2 = createCar("Honda", "Civic", 2019);
// 调用对象的方法来打印汽车信息
car1.printInfo(); // 输出:Make: Toyota, Model: Camry, Year: 2020
car2.printInfo(); // 输出:Make: Honda, Model: Civic, Year: 2019
```
在上面的代码中,我们定义了一个 `createCar` 工厂函数,它接受三个参数来创建一个新的 car 对象。在函数内部,我们创建一个新的对象,并且将参数传递给对象的属性。然后,我们定义了一个 `printInfo` 方法来打印车辆信息。最后,我们返回新创建的对象。
我们使用 `createCar` 函数来创建两辆不同的汽车,并且调用对象的方法来打印汽车信息。因为我们使用工厂模式创建对象,所以我们可以轻松地创建多辆相似的汽车,而不需要每次都使用 new 关键字来创建。