Ошибка типа: незаконный вызов для console.log.apply - PullRequest
128 голосов
/ 17 ноября 2011

Если вы запустите это в консоли Chrome:

console.log.apply(null, [array])

Chrome возвращает ошибку:

// TypeError: Illegal Invocation

Почему? (протестировано на Chrome 15 через OSX)

1 Ответ

179 голосов
/ 17 ноября 2011

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

Это ожидается, потому что console.info ожидает ссылку "this" на будь консолью, а не окном.

console.info("stuff")
stuff
undefined
console.info.call(this, "stuff")
TypeError: Illegal invocation
console.info.call(console, "stuff")
stuff
undefined

Такое поведение ожидается.

https://bugs.chromium.org/p/chromium/issues/detail?id=48662

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...