У меня вопрос newby в Javascript. Если я вызываю console.log (что-то) до того, как вызывается следующая функция MyInit (на простой странице html), я получаю исключение, потому что консоль не определена. Ничего страшного. Но я не вижу, что делает функция MyInit, чтобы заставить ее работать: похоже, что она определяет функцию журнала как нечто пустое, которое ничего не делает. Как это получается из определения, которое я предоставляю фактической функции журнала консоли, которая записывается в консоль?Определение консоли в Javascript
function MyInit()
{
if (!window.console) console = { log: function() { } };
}
...
<!-- later -->
console.log("OnMouseOver occurred.");
Правильно ли я здесь (сфера очень отличается от C++/C#): В globabl объеме, посмотрите на этих двух утверждений: (A), если window.console = (window.console!). (B) если (! Окно.console) консоль = . Это то же самое, потому что вторая версия устанавливает консоль в глобальную область, которая затем является членом окна. Но эта третья версия не работает: (C) if (! Console) console = . , потому что оператор if ссылается на неопределенную консольную переменную, прежде чем ему что-либо присвоено. Другими словами, я могу проверить член атрибута (window.console), но не неопределенную переменную. –
Dean