Fehlermeldung

ReferenceError: "x" is not defined

Fehlertyp

ReferenceError.

Was ist falsch gelaufen?

Es gibt eine Referenzen auf eine Variable, die nicht existiert. Diese Variable muss deklariert werden oder man muss sicherstellen, dass sie im Skript zugänglich ist oder sich im aktuellen scope befindet.

Hinweis: Wenn Sie eine Bibliothek nutzen (wie z.B. jQuery), stellen Sie sicher, dass diese tatsächlich geladen ist, bevor Sie auf dessen Variablen (z. B. "$")zugreifen. Schreiben Sie das <script> Element, welches die Bibliothek lädt vor den Code, der die Bibliothek verwendet.

Beispiele

Variable nicht deklariert

foo.substring(1); // ReferenceError: foo is not defined

Die "foo" Variable ist nirgends deklariert. Die Variable muss ein String sein, damit die Methode String.prototype.substring() funktioniert.

var foo = "bar";
foo.substring(1); // "ar"

Falscher Gültigkeitsbereich

Eine Variable muss im aktuellem Kontext verfügbar sein. Variablen, die innerhalb einer Funktion definiert sind, können nicht von außerhalb erreicht werden, da diese nur im Gültigkeitsbereich der Funktion existieren.

function numbers() { 
  var num1 = 2, 
      num2 = 3;
  return num1 + num2;
}

console.log(num1); // ReferenceError "num1" is not defined.

Wobei aus einer Methode kann man auf alle Variablen und Methoden zugreifen, die im gleichen Gültigkeitsbereich definiert worden sind. Kurz gesagt, eine Methode, die im globalen Gültigkeitsbereich definiert worden ist, kann auf alle Variablen zugreifen, die im globalen Gültigkeitsbereich definiert wurden.

var num1 = 2,
    num2 = 3;

function numbers() {
  return num1 + num2; 
}

console.log(numbers()); // 5

Siehe auch

Schlagwörter des Dokuments und Mitwirkende

Schlagwörter: 
Mitwirkende an dieser Seite: schlagi123, BennoKieselstein, Bernd_L, akumagamo
Zuletzt aktualisiert von: schlagi123,