Warum werden bestimmte Funktionsaufrufe in JavaScript als "illegale Aufrufe" bezeichnet?

Zum Beispiel, wenn ich dies tun:

var q = document.querySelectorAll;

q('body');

Bekomme ich einen "Illegalen Aufrufs" Fehler in Chrome. Ich kann nicht aus irgendeinem Grund denken, warum dies notwendig ist. Zum einen, es ist nicht der Fall mit allen native-code-Funktionen. In der Tat kann ich dies tun:

var o = Object; //which is a native code function

var x = new o();

Und alles funktioniert gut. Insbesondere habe ich entdeckt, dieses problem beim Umgang mit dem Dokument und der Konsole. Irgendwelche Gedanken?

InformationsquelleAutor der Frage user1152187 | 2012-05-24

Schreibe einen Kommentar