This JavaScript exception Assignment to undeclared variable occurs in strict-mode If the value has been assigned to an undeclared variable.
Message:
ReferenceError: assignment to undeclared variable "x" (Firefox) ReferenceError: "x" is not defined (Chrome) ReferenceError: Variable undefined in strict mode (Edge)
Error Type:
ReferenceError
Cause of the error: Somewhere in the code, there is an assignment without the var, let, or const keywords. When a value is assigned to an undeclared variable this error occurs.
Example 1: In this example, the const keyword is used with the variable assignment, So the error has not occurred.
HTML
<!DOCTYPE HTML><html> <body style="text-align:center;"> <h1 style="color:green;"> neveropen </h1> <p> JavaScript ReferenceError- Assignment to undeclared variable </p> <button onclick="Geeks();"> click here </button> <p id="GFG_DOWN"> </p> <script> let el_down = document.getElementById("GFG_DOWN"); function GFG() { 'use strict'; const var_1 = "Value assigned without declaration"; } function Geeks() { try { GFG(); el_down.innerHTML = "'Assignment to undeclared variable'" + "error has not occurred"; } catch (e) { el_down.innerHTML = "'Assignment to undeclared variable'" + "error has occurred"; } } </script></body></html> |
Output:
Example 2: In this example, the var, let or const keyword is not used with the variable assignment, So the error has occurred.
HTML
<!DOCTYPE HTML><html> <body style="text-align:center;"> <h1 style="color:green;"> neveropen </h1> <p> JavaScript ReferenceError - Assignment to undeclared variable </p> <button onclick="Geeks();"> click here </button> <p id="GFG_DOWN"> </p> <script> let el_down = document.getElementById("GFG_DOWN"); function GFG() { 'use strict'; var_1 = true; } function Geeks() { try { GFG(); el_down.innerHTML = "'Assignment to undeclared variable'" + "error has not occurred"; } catch (e) { el_down.innerHTML = "'Assignment to undeclared variable'" + "error has occurred"; } } </script></body></html> |
Output:

