KELI CHEMISCHE FUNKTIONISSIKMANT: Eine JS-Vorverarbeitungsidee; Das Prinzip, dass die Verwendung der Funktionsausführung einen nicht zerstörten Bereich bilden kann, kann gebildet werden, und alle Inhalte, die vorverarbeitet werden müssen, wird in diesem nicht zerstörten Bereich gespeichert, der nicht zerstört wird, und in der kleinen Funktion wird eine kleine Funktion ausgeführt.
Die Currying -Funktion spielt hauptsächlich eine Rolle bei der Vorverarbeitung;
Die Funktion der Bind -Methode: Vorverarbeitet dies in der Callback -Rückrufmethode als Kontextkontext;
/*** Prinzip der Implementierung von Bind -Methode 1* @param Rückruf [Funktion] Rückruffunktion* @param Context [Objekt] Kontext* @returns {Funktion} Ändern Sie die Funktion, auf die dieser*/Funktion binden (Rückruf, Kontext) {var outterarg = Array.Prototyp.Slice.Slice.Call (Argumente). Umfang; return function () {var innerarg = array.prototype.slice.call (Argumente, 0); // Es bedeutet, alle Argumenteparameter im aktuellen Bereich zu übernehmen; Callback.Apply (Kontext, oterarg.concat (Innerarg)); }} /*** Imitieren Sie das Prinzip der Bind -Implementierung in der Prototyp -Kette (koreanische und chemische Funktionsidee)* @param Context [Objekt] Kontext* @returns {function} Ändern Sie die Funktion, auf die diese*/Funktion.Prototype.Mybind = Funktion mybind (Kontext) {var _this = this; var outarg = array.prototype.lice.call (Argumente, 1); // if ('bind' in function.prototype) {return this.bind.apply (this, [context] .concat (outarg)); } // Rückgabe im Fall der Inkompatibilitätsfunktion () {var inArg = array.prototype.slice.call (Argumente, 0); inarg.length === 0? Inarg [inarg.length] = window.event: null; var arg = outarg.concat (inArg); _this.apply (Kontext, arg); }}Das obige ist der relevante Code für die Implementierung der BIND -Methode mithilfe von Curry -Funktionen. Ich hoffe, es wird für alle hilfreich sein, JavaScript -Programme zu lernen.