Maison  >  Article  >  interface Web  >  Comment appeler des fonctions en tant que paramètres dans les compétences javascript_javascript

Comment appeler des fonctions en tant que paramètres dans les compétences javascript_javascript

WBOY
WBOYoriginal
2016-05-16 16:15:091320parcourir

L'exemple de cet article décrit la méthode d'appel de fonctions en tant que paramètres en JavaScript. Partagez-le avec tout le monde pour votre référence. L'analyse spécifique est la suivante :

Regardons d'abord un exemple :

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);
});

L'ordre dans lequel ce code est exécuté est : interprété et exécuté de haut en bas, ce qui est une exigence de JS.
Ici, nous expliquons principalement comment la fonction dans m.eachMap() est passée et exécutée en paramètre :

étape 1 : Lorsque la méthode m.eachMap est exécutée, JS trouvera la méthode this.eachMap correspondante
; étape 2 : Trouvez la méthode this.eachMap et elle sera exécutée selon l'ordre des instructions dans le corps de la fonction
 ; étape 3 : lorsque fn(attr, obj[attr]); est exécuté, il reviendra à l'exécution de l'instruction for ; notez qu'avant de revenir à l'exécution de l'instruction for, attr n'a aucune valeur après le retour de l'instruction for ; attr est Oui, c'est '01', et la valeur de obj[attr] est également là, c'est 'abc'
; étape 4 : Ensuite, fn(attr, obj[attr]); reviendra à la fonction paramètre de la méthode m.eachMap, c'est-à-dire

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

attr remplace la clé, obj[attr] remplace la valeur, exécute l'instruction d'alerte et la génère.

Étape 5 : continuez à exécuter la boucle for, répétez l'étape 4 et sortez jusqu'à la fin.

J'espère que cet article sera utile à la conception de la programmation JavaScript de chacun.

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn