Maison >interface Web >js tutoriel >Création d'objets en JavaScript : fermetures, prototypes et classes ES

Création d'objets en JavaScript : fermetures, prototypes et classes ES

Linda Hamilton
Linda Hamiltonoriginal
2025-01-04 12:13:34929parcourir

Creating Objects in JavaScript: Closures, Prototypes, and ESlasses

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.

1. Utiliser les fermetures

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

2. Utiliser des prototypes

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

3. Utilisation des classes ES6

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.

  • Les Les fermetures sont utiles pour encapsuler des données dans des fonctions.
  • Les Prototypes nous permettent de partager des propriétés et des méthodes entre plusieurs objets.
  • Les Classes ES6 fournissent une syntaxe basée sur les classes plus traditionnelle, la rendant plus facile à comprendre et à utiliser.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn