ReferenceError: reference to undefined property "x"

Message

ReferenceError: reference to undefined property "x" (Firefox)

Type d'erreur

Erreur ReferenceError lancée en avertissement, uniquement en mode strict.

Quel est le problème ?

Le code tente d'accéder à une propriété inexistante d'un objet. Il existe deux méthodes pour accéder aux propriétés. Pour plus de détails, on pourra lire la page de la référence sur les accesseurs de propriété.

Les erreurs liées aux références vers des propriétés non-définies ne sont déclenchées qu'en mode strict. En mode non-strict, elles sont ignorées silencieusement.

Exemples

Exemples invalides

Ici, la propriété truc n'est pas une propriété définie et on obtient alors une ReferenceError.

"use strict"; 

var toto = {};
toto.truc; // ReferenceError: reference to undefined property "bar"

Exemples valides

Pour éviter cette erreur, il faut que truc soit une variable  « définie » ou vérifier son existence avant de l'utiliser (en utilisant par exemple la méthode Object.prototype.hasOwnProperty()).

"use strict";

var toto = {};

toto.truc = "lune";
console.log(toto.truc); // "lune"

if (foo.hasOwnProperty("truc") {
  console.log(toto.truc);
}

Voir aussi

Étiquettes et contributeurs liés au document

 Contributeurs à cette page : SphinxKnight
 Dernière mise à jour par : SphinxKnight,