TypeError: console.log.apply での不正な呼び出し 質問する

TypeError: console.log.apply での不正な呼び出し 質問する

これを Chrome コンソールで実行すると:

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

Chrome からエラーが返されます:

// TypeError: Illegal Invocation

なぜ?(OSX 経由で Chrome 15 でテスト済み)

ベストアンサー1

実行コンテキストがコンソールから他のオブジェクトに変更された場合は機能しない可能性があります。

これは、console.info が「this」参照が window ではなく console であると想定しているため、予想された動作です。

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

おすすめ記事