これは、この質問 (これは自己完結型ですが) のフォローアップです。3 つのメソッドを「呼び出し」ようとしていますが、jQuery map で正しく動作しません。
メソッドのセットを配列に格納しようとしていますが、以下のような引数を持つセットがあります (初期メソッドは before_methods にあり、提案されたメソッドは lm_methods にあります)。私が望むものはかなり自明だと確信していますが、引数をfへの合理的な呼び出し(具体的にはarc.pLikedByTerm)にマージできるようにしたいと考えています。私は現在、次のものを持っています:
// signature
pLikedByTerm:function(term, ne, sw, m){
....
}
// code before_methods just to show
this.before_methods=[arc.pLocations,arc.pLikedLocations,arc.pLikedItems];
this.lm_methods=[arc.pLocations,arc.pLikedLocations,arc.pLikedItems, arc.pLikedByTerm('surfing'),arc.pLikedByTerm('sailing')];
$.each(this.lm_methods, function(i,f){
f(ne,sw,m);
});
これをどのように行うか、またはこれは悪い設計ですか? 慣用的な方法は何ですか?私の脳は揚げられています。
thx事前に
更新 1
以下の答えをいじってみると、これがうまくいくように見えますが、これは最も単純なことかもしれません:
var fns=[logStuff("this is msg"), logMoreArgs("a term","a you msg")];
for (var i=0; i<fns.length; i++) {
fns[i];
}