Private Class Fields

JavaScript 🟡 Mid

Définition

Champs de classe préfixes par # véritablement prives (hard private). Non accessibles en dehors de la classe, même par les sous-classes. Contrairement aux conventions _prefix.

Analogie

Un coffre-fort dans ta chambre : même les membres de ta famille ne peuvent pas l'ouvrir.

Exemple de code

class Counter {
  #count = 0;
  increment() { this.#count++; }
  get value() { return this.#count; }
}
const c = new Counter();
c.increment();
c.value;   // 1
// c.#count; // SyntaxError

Cas d'usage

Encapsulation stricte dans les classes, protection des invariants internes.

Termes liés

#core#ES2022#OOP

← → au clavier pour passer d'une fiche à l'autre