128 votes

invocation illégale de typeerror sur console.log.apply

Si vous l'exécutez dans la console;

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

Chrome vous renvoie une erreur:

// TypeError: Illegal Invocation

Pourquoi? (Testé sur OSX Chrome 15)

179voto

Pavel Podlipensky Points 3943

Cela peut ne pas fonctionner dans les cas où le contexte d'exécution a été modifié de la console à un autre objet:

Ceci est attendu car console.info s'attend à ce que sa référence "this" soit console, pas fenêtre.

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

Ce comportement est attendu.

http://code.google.com/p/chromium/issues/detail?id=48662

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X