Heim  >  Artikel  >  Web-Frontend  >  So rufen Sie Funktionen als Parameter in javascript_javascript skills auf

So rufen Sie Funktionen als Parameter in javascript_javascript skills auf

WBOY
WBOYOriginal
2016-05-16 16:15:091320Durchsuche

Das Beispiel in diesem Artikel beschreibt die Methode zum Aufrufen von Funktionen als Parameter in JavaScript. Teilen Sie es als Referenz mit allen. Die spezifische Analyse lautet wie folgt:

Schauen wir uns zunächst ein Beispiel an:

function Map(){
var obj = {};

this.put = function(key, value){
obj[key] = value;
}

this.eachMap = function(fn){
for(var attr in obj){
fn(attr, obj[attr]);
}
}

}
var m = new Map();
m.put('01', 'abc');
m.put('02', 1024);
m.put('03', true);
m.put('04', 0);
m.put('05', false);

m.eachMap(function(key, value){
alert(key + " : " + value);
});

Die Reihenfolge, in der dieser Code ausgeführt wird, ist: von oben nach unten interpretiert und ausgeführt, was eine Anforderung von JS ist.
Hier erklären wir hauptsächlich, wie die Funktion in m.eachMap() als Parameter übergeben und ausgeführt wird:

Schritt 1: Wenn die m.eachMap-Methode ausgeführt wird, findet JS die entsprechende this.eachMap-Methode Schritt 2: Suchen Sie die Methode this.eachMap und sie wird entsprechend der Reihenfolge der Anweisungen im Funktionskörper ausgeführt Schritt 3: Wenn fn(attr, obj[attr]); ausgeführt wird, kehrt es zur Ausführung der for-Anweisung zurück. Beachten Sie, dass attr nach der Rückkehr von der for-Anweisung keinen Wert hat attr ist Ja, es ist '01', und der Wert von obj[attr] ist auch da, es ist 'abc'; Schritt 4: Dann kehrt fn(attr, obj[attr]); zur Parameterfunktion der m.eachMap-Methode zurück, also


attr ersetzt den Schlüssel, obj[attr] ersetzt den Wert und führt die Warnanweisung aus und gibt sie aus.
function(key, value){
alert(key + " : " + value);
}
Schritt 5: Führen Sie die for-Schleife weiter aus, wiederholen Sie Schritt 4 und geben Sie bis zum Ende aus.

Ich hoffe, dass dieser Artikel für das JavaScript-Programmierdesign aller hilfreich sein wird.

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn