Maison >interface Web >js tutoriel >Création d'objets en JavaScript : fermetures, prototypes et classes ES
En JavaScript, il existe plusieurs façons de créer des objets. Chaque méthode a ses propres avantages et cas d’utilisation. Nous explorerons trois méthodes courantes : les fermetures, les prototypes et les classes ES6 avec des exemples.
Une fermeture est une fonction qui mémorise l'environnement dans lequel elle a été créée. Cela nous permet d'encapsuler les données dans des fonctions.
function createPerson(name) { let age = 0; return { getAge: function() { return age; }, growUp: function() { age++; } }; } const person1 = createPerson("Alice"); console.log(person1.getAge()); // Output: 0 person1.growUp(); console.log(person1.getAge()); // Output: 1
Les prototypes nous permettent de créer des objets avec des propriétés et des méthodes partagées.
function Person(name) { this.name = name; } Person.prototype.getAge = function() { return this.age || 0; }; Person.prototype.growUp = function() { if (!this.age) { this.age = 1; } else { this.age++; } }; const person2 = new Person("Bob"); console.log(person2.getAge()); // Output: 0 person2.growUp(); console.log(person2.getAge()); // Output: 1
Les classes ES6 fournissent une syntaxe basée sur les classes plus traditionnelle, ce qui la rend plus facile à comprendre et à utiliser.
class Person { constructor(name) { this.name = name; this.age = 0; } getAge() { return this.age; } growUp() { this.age++; } } const person3 = new Person("Charlie"); console.log(person3.getAge()); // Output: 0 person3.growUp(); console.log(person3.getAge()); // Output: 1
Nous avons exploré trois méthodes pour créer des objets en JavaScript : les fermetures, les prototypes et les classes ES6. Chaque méthode a ses propres atouts et cas d'utilisation.
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!