Подтвердить что ты не робот

"alert" не определяется при запуске www.jshint.com

Я исправил это, просто добавив var alert; Однако, это то, что я должен делать, чтобы уйти от сообщения об ошибке? Вот исправление. Вот провал www.jshint.com.

Я пытаюсь учиться на ошибке, которую он бросает. Не обязательно заставлять их уходить.

(function () {

"use strict";

var alert;  //  added this in to fix

function initialize_page()
  {
  alert ("hi");
  }

addEventListener('load', initialize_page);

})();
4b9b3361

Ответ 1

В этой документации говорится о опции browser:

Этот параметр определяет глобальные переменные, открытые современными браузерами: от хорошего документа и навигатора до HTML5 FileReader и других новых разработок в мире браузера. Примечание. Этот параметр не предоставляет переменные, такие как предупреждение или консоль. Для получения дополнительной информации см. Опцию разработки.

и следующее о опции devel:

Этот параметр определяет глобальные переменные, которые обычно используются для регистрации плохой отладки: консоли, предупреждения и т.д. Обычно рекомендуется не отправлять их на производство, потому что, например, console.log разбивается на устаревшие версии Internet Explorer.

У вас включен браузер и отключено. Вы можете управлять ими с помощью флажков в поле "Предположите" на исходной странице jshint. Я также рекомендую прислушаться к предупреждению в документации; -)

Ответ 2

Вместо

alert('message')

вы должны использовать

window.alert('message');

Поскольку этот метод определяется в window объекте.

Это, конечно, предполагает, что у вас есть опция browser, установленная на true в вашем .jshintrc, так что jshint будет знать, что объект окна открыт.

"browser"       : true,     // Standard browser globals e.g. window, document.

* То же самое происходит с confirm().

Ответ 3

Установите "devel: true" в "Параметры". Это позволяет использовать такие функции, как оповещение, консоль и т.д.

См. документацию здесь: http://jshint.com/docs/options/

Ответ 4

function prod(arr) {
    let largest = 0;
    let secondLargest = 0;
    const len = arr.length;
    for (let i = 0; i < len; i++) {
        if (arr[i] > largest) {
            secondLargest = largest;
            largest = arr[i];
        }
        else if (arr[i] < largest && arr[i] > second_largest) {
            secondLargest = arr[i]
        }
    }
    return largest * secondLargest;
}

console.log(prod([2, 4, 7, 8]));

Ответ 5

использовать файл.jshintrc

в js alert (data.status); или window.alert(data.status);

"window": true,
"alert": true

или лучше

"devel": true,

{
"esversion": 6,
"browser": true,
"undef": true,
"varstmt": true,
"forin": true,
"unused": true,
"funcscope": true,
"lastsemic": true,
"moz": true,
"jquery": true,
"module": true,
"devel": true,
"globals": {
    "window": true,
    "document": true,
    "console": true,
    "alert": true
}

}

Ответ 6

Вместо:

alert('message')

Я использую:

var alert = window['alert'];

Ответ 7

попробуйте передать объект окна в:

(function (global) {

"use strict";

var alert;  //  added this in to fix

function initialize_page()
  {
  global.alert ("hi");
  }

addEventListener('load', initialize_page);

})(window);

Ответ 8

объявить предупреждение как переменную, и он будет работать без каких-либо настроек:

например:

var alert;

alert('hello world');