Factory Pattern (ok)
https://app.gitbook.com/@javascriptuse/s/advanced/design-pattern-trong-javascript
class VehicleFactory {
createVehicle(options) {
if (options.vehicleType === 'car') {
return new Car(options);
} else if (options.vehicleType === 'truck') {
return new Truck(options);
}
}
}
class Car {
constructor(options) {
this.door = options.doors || 4;
this.state = options.state || 'brand new';
this.color = options.color || 'white';
}
}
class Truck {
constructor(options) {
this.doors = options.doors || 4;
this.state = options.state || 'used';
this.color = options.color || 'black';
}
}
var vehicle = new VehicleFactory().createVehicle({vehicleType: "car",doors:"Door"});
console.log(vehicle);// Car {door: "Door", state: "brand new", color: "white"}Last updated