--- title: 'ReferenceError: assignment to undeclared variable "x"' slug: Web/JavaScript/Reference/Fehler/Undeclared_var tags: - Errors - JavaScript - ReferenceError - Strict Mode translation_of: Web/JavaScript/Reference/Errors/Undeclared_var ---
ReferenceError: assignment to undeclared variable "x" (Firefox) ReferenceError: "x" is not defined (Chrome) ReferenceError: Variable undefined in strict mode (Edge)
{{jsxref("ReferenceError")}} Warnung nur im Strict mode.
Ein Wert wurde zu einer nicht deklarierten Variablen hinzugefügt. Oder mit anderen Worten, es gibt eine Zuweisung ohne das Schlüsselwort var. Es gibt einige Unterschiede zwischen deklarierten und nicht deklarierten Variablen, die zu unerwarteten Ergebnissen führen kann und weshalb der Fehler im Strict Mode erscheint.
Drei Dinge über deklarierte und nicht deklarierte Variablen:
Mehr Details und Beispiele findet man auf der var
Referenzseite.
Fehler mit nicht deklarierten Variablenzuweisungen gibt es nur im Strict Mode Code. Außerhalb davon wird die Warnung einfach Ignoriert.
In diesem Fall ist die "bar" eine nicht deklarierte Variable.
function foo() { 'use strict'; bar = true; } foo(); // ReferenceError: assignment to undeclared variable bar
Um "bar" zu einer deklarierten Variable zu machen, kann das Schlüsselwort var
eingesetzt werden.
function foo() { 'use strict'; var bar = true; } foo();