Movatterモバイル変換


[0]ホーム

URL:


  1. Веб-технологии для разработчиков
  2. JavaScript
  3. Справочник по JavaScript
  4. JavaScript ссылки на ошибки
  5. ReferenceError: assignment to undeclared variable "x"

This page was translated from English by the community.Learn more and join the MDN Web Docs community.

View in EnglishAlways switch to English

ReferenceError: assignment to undeclared variable "x"

Сообщение

ReferenceError: assignment to undeclared variable "x" (Firefox)ReferenceError: "x" is not defined (Chrome)ReferenceError: Variable undefined in strict mode (Edge)

Тип ошибки

ReferenceError предупреждение только встрогом режиме.

Что пошло не так?

Значению присвоена необъявленная переменная. Другими словами, было задание без ключевого слова var. Существуют некоторые различия между объявленными и необъявленными переменными, что может привести к неожиданным результатам, поэтому JavaScript представляет ошибку в строгом режиме.

Три примечания о объявленных и необъявленных переменных:

  • Объявленные переменные ограничены в контексте выполнения, в котором они объявлены. Необъявленные переменные всегда глобальны.
  • Объявленные переменные создаются до выполнения любого кода. Необъявленные переменные не существуют до тех пор, пока не будет выполняться присвоение им кода.
  • Объявленные переменные - это неконфигурируемое свойство контекста их выполнения (функция или глобальная). Необъявленные переменные настраиваются (например, могут быть удалены).

Более подробную информацию и примеры см. На странице справкиПеременных

Errors about undeclared variable assignments occur instrict mode code only. In non-strict code, they are silently ignored.

Примеры

Неправильно

В этом случае переменная "bar" является необъявленной переменной.

js
function foo() {  "use strict";  bar = true;}foo(); // ReferenceError: assignment to undeclared variable bar

Правильно

Чтобы сделать "bar" объявленной переменной, вы можете добавить перед ней ключевое словоvar .

js
function foo() {  "use strict";  var bar = true;}foo();

Смотрите также

Help improve MDN

Learn how to contribute

This page was last modified on byMDN contributors.


[8]ページ先頭

©2009-2025 Movatter.jp