Jestem nieco zdezorientowany. Proszę znaleźć kod, jak poniżej.Błąd niedozwolonego wywołania, gdy console.log przeszedł w funkcję
var o={
printToConsole: function(f){
f(1);
}
};
o.printToConsole(console.log);
//TypeError: Illegal invocation
// otrzymuję TypeError
Z definicji console.log otrzymujemy ten
`function log() { [native code] }`
w Chrome, który wyraźnie wyświetla, że nie ma żadnego argumentu, chociaż kiedy próbujemy drukować rzeczy na konsoli, piszemy tak, np. przekazujemy argument do console.log.
console.log('Take me on Console');
Dlaczego otrzymuję ten TypeError i jak ten console.log zachowuje się w chrome?
Masz rację. To zależy od przeglądarki. – Mozak
Firefox wyświetla komunikat w konsoli bez wiązania go z konsolą. – Mozak
Znaleźliśmy podobne pytanie http://stackoverflow.com/questions/8904782/uncaught-typeerror-ilegal-invocation-in-javascript – Mozak