Call und Apply scheinen dies dynamisch zu ändern. Wenn ein Objekt keine bestimmte Methode hat, andere jedoch schon, können wir Call oder Apply verwenden, um mit den Methoden anderer Objekte zu arbeiten. In diesem Artikel wird hauptsächlich die einfache Verwendung von „Apply“ und „Call“ in js vorgestellt. Ich hoffe, dass er für alle hilfreich ist.
call und apply sind beide Methoden von Function.prototype, die intern von der JavaScript-Engine implementiert werden. Da sie zu Function.prototype gehören, verfügt jede Function-Objektinstanz, d. h. jede Methode, über Aufruf- und Apply-Attribute. . Da es sich um Attribute von Methoden handelt, sind diese beiden Methoden natürlich leicht zu verwechseln, aber sie werden nur auf unterschiedliche Weise verwendet call, apply Wird für Methoden verwendet.
function A() { this.getName = function (xx) { return xx; } } function B() { } var a = new A(); console.log( a.getName('i am A') ); //i am A var b = new B() ; console.log( a.getName.call(b,'i am B') ); // i am B
function A() { this.sun = function (a ,b) { return a+b; } } function B() { } var a = new A(); console.log( a.sun(1,2) ); //3 var b = new B() ; console.log( a.sun.call(b,2,2) ); // 4 console.log( a.sun.apply(b,[3, 3]) ); //6
var domNodes = Array.prototype.slice.call(document.getElementsByTagName("*"));
Detaillierte Erläuterung der Anwendungs- und Aufrufbeispiele in Javascript, um den internen Punkt des Funktionskörpers zu ändern
Aufruf in js() und apply() verstehen
Dies in Js weist auf das Problem von apply().call(), bind() hin
Das obige ist der detaillierte Inhalt vonDetaillierte Erklärung der einfachen Verwendung von Apply und Call in js. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!