Cet article partage avec vous la quatrième série de modèles de conception JavaScript : mode prototype. Les amis intéressés peuvent y jeter un œil
Le code de cette série a été téléchargé sur l'adresse GitHub de démonstration du modèle de conception JavaScript.
Modèle de prototype (Modèle de prototype) : En termes simples, cela signifie créer un prototype partagé et créer de nouveaux objets en copiant ces prototypes. Utilisé pour créer des objets répétés, ce type de modèle de conception est un modèle de création, qui constitue un bon choix pour créer des objets.
Nous pouvons implémenter le mode prototype grâce à la fonctionnalité d'héritage prototypique unique de JavaScript, c'est-à-dire créer un objet comme valeur d'attribut prototype d'un autre objet. Nous pouvons également utiliser Object. create (prototype, optionnelDescriptorObjects) pour implémenter l'héritage du prototype.
// 因为不是构造函数,所以不用大写 var someCar = { drive: function () { }, name: '马自达 3' }; // 使用Object.create创建一个新车x var anotherCar = Object.create(someCar); anotherCar.name = '丰田佳美';
La méthode Object.create() utilisera l'objet prototype spécifié et ses propriétés pour créer un nouvel objet.
var vehicle = { getModel: function () { console.log('车辆的模具是:' + this.model); } }; var car = Object.create(vehicle, { 'id': { value: MY_GLOBAL.nextId(), enumerable: true }, 'model': { value: '福特', enumerable: true } });
Si vous souhaitez implémenter vous-même le modèle de prototype au lieu d'utiliser directement Object.create. Vous pouvez utiliser le code suivant pour y parvenir.
var vehiclePrototype = { init: function (carModel) { this.model = carModel; }, getModel: function () { console.log('车辆模具是:' + this.model); } }; function vehicle(model) { function F() { }; F.prototype = vehiclePrototype; var f = new F(); f.init(model); return f; } var car = vehicle('福特Escort'); car.getModel();
Le mode prototype consiste à créer un prototype partagé et à créer une nouvelle classe en copiant ce prototype, qui est utilisé pour créer des objets en double et améliorer les performances.
Référencé à partir du modèle de prototype du modèle de conception du blog de l'oncle Tom
Recommandations associées :
JavaScript Design Pattern Series 1 : Factory Pattern
Série de modèles de conception JavaScript 2 : modèle Singleton
Série de modèles de conception JavaScript 3 : modèle de constructeur
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!