ホームページ >ウェブフロントエンド >jsチュートリアル >javascript_javascript スキルのパラメータとして関数を呼び出す方法

javascript_javascript スキルのパラメータとして関数を呼び出す方法

WBOY
WBOYオリジナル
2016-05-16 16:15:091402ブラウズ

この記事の例では、JavaScript で関数をパラメーターとして呼び出す方法について説明します。皆さんの参考に共有してください。具体的な分析は次のとおりです。

まず例を見てみましょう:

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

このコードが実行される順序は、上から下に解釈および実行されます。これは JS の要件です。
ここでは主に、m.eachMap() の関数がパラメータとしてどのように渡されて実行されるかを説明します。

ステップ 1: m.eachMap メソッドが実行されると、JS は対応する this.eachMap メソッドを見つけます。 ステップ 2: this.eachMap メソッドを見つけます。関数本体内のステートメントの順序に従って実行されます。 ステップ 3: fn(attr, obj[attr]); が実行されると、for ステートメントの実行に戻ります。for ステートメントから戻った後、attr には値がないことに注意してください。 attr ははい、'01'、obj[attr] の値もあり、'abc' です。 step4: 次に、 fn(attr, obj[attr]); は m.eachMap メソッドのパラメータ関数、つまり

に戻ります。


attr は key を置き換え、obj[attr] は value を置き換え、アラート ステートメントを実行して出力します。
function(key, value){
alert(key + " : " + value);
}
ステップ 5: for ループを実行し続け、ステップ 4 を繰り返し、最後まで出力します。

この記事が皆様の JavaScript プログラミング設計に役立つことを願っています。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。