@dgt
Изучаю программирование

Как исправить ошибку Uncaught ReferenceError?

Возникает ошибка Uncaught ReferenceError: Test is not defined при вызове функции:

(function(w) {
   'use strict';
   Test = function(hello) {
      console.log(hello);
   }
}(window));


new Test('world');

Пробовал несколько вариантов, чтоб исправить, но ничего не помогает. Помогите, пожалуйста.
  • Вопрос задан
  • 1165 просмотров
Решения вопроса 3
Ответ написан
Комментировать
0xD34F
@0xD34F Куратор тега JavaScript
(function(w) {
  'use strict';
  w.Test = function(hello) {
    console.log(hello);
  };
}(window));

или

var Test = (function() {
  'use strict';
  return function(hello) {
    console.log(hello);
  };
}());

или

(function() {
  Test = function(hello) {
    console.log(hello);
  };
}());
Ответ написан
Комментировать
все из-за 'use strict';
объявите переменную Test (var let const) прежде чем что либо к ней применять, но в вашей конструкции нет смысла

как насчет такого
const Helpers = new (function() {
	this.Test = function(hello) {
		return console.log(hello)
	}

	return this;
});

Helpers.Test('hello')
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы