this keyword

JavaScript 🟡 Mid

Definition

Reference au contexte d'execution courant. Sa valeur depend de comment la fonction est appelee : methode (objet), constructeur (nouvelle instance), arrow function (this lexical), ou appel simple (undefined en strict).

Analogie

Le pronom 'je' : sa signification change selon qui parle, pas selon ou la phrase est ecrite.

Exemple de code

const obj = {
  name: 'Alice',
  greet() { return this.name; },       // 'Alice'
  arrow: () => this.name,               // undefined (this lexical)
};
const fn = obj.greet;
fn(); // undefined (contexte perdu)

Cas d'usage

Acceder aux proprietes de l'objet courant dans les methodes de classe ou les callbacks.

Anti-pattern

Passer une methode comme callback sans bind, perdant le contexte this.
#core#interview#fondamental