ReferenceError: reference to undefined property "x"

Fehlermeldung

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

Fehlertyp

ReferenceError Fehlermeldung tritt nur im  strikten Modus auf.

Was ist falsch gelaufen?

Es wird versucht auf eine Eigenschaft zuzugreifen, die nicht existiert. Es gibt zwei Arten um auf Eigenschaften zuzugreifen, siehe Eigenschaften Zugriffsfunktionen auf den Referenzseiten f├╝r weitere Details.

Fehler aufgrund von leeren Eigenschaftsreferenzen treten nur im Quellcode auf, der im strikten Modus geschrieben ist. Im Quellcode der nicht im strikten Modus geschrieben ist, wird der Fehler ohne Meldung ignoriert.

Beispiele

Ung├╝ltige F├Ąlle

In diesem Fall ist die Eigenschaft "bar" undefiniert.

"use strict";

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

G├╝ltige F├Ąlle

Um Fehler zu vermeiden muss man eine Eigenschaft "bar" definieren oder ├╝berpr├╝fen, ob die Eigenschaft "bar" existiert, bevor man auf diese zugreift. (z.B.: mit Hilfe der Funktion Object.prototype.hasOwnProperty()).

"use strict";

var foo = {};

// Definiert die bar Eigenschaft

foo.bar = "Mond";
console.log(foo.bar); // "Mond"

// Testet vor dem Zugriff, ob bar existiert.

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

Siehe auch