Uncaught Type Error: Невозможно установить свойство undefined

Вот код, это довольно просто:

(function() {
  "use strict";

  // Define our constructor
  this.White = function() {
    this.version = "1.0.0";
  };
}());

// Later
a = new White();
alert(a.version);

В JSBin (и при запуске JShint) он работает так, как должен. Не работает в JSBin после добавления "use strict", Однако при запуске этого скрипта в Chrome я получаю смутное сообщение:

Uncaught TypeError: Невозможно установить свойство 'White' из неопределенного

Зачем?!

1 ответ

Решение

Использование строгого режима не позволит вам создать неявный globals.this.White поднят глобально и неявно создан. Удаление этого приведет к удалению ошибки Strict Mode

Другие вопросы по тегам