第1引数の「数 - 1」回、関数が実行されたら、それ以降の関数実行時、第2引数で指定した関数が発動する。
■使用例
function logged( txt ){
var text = _.now();
console.log( "re now : " + txt + " : " + text );
}
var re = _.after(4, logged);
var re2 = _.after(2, logged);
re("01");
re("02");
re2("re2 : 01");
re("03");
re("04");
re2("re2 : 02");
re("05");
re("06");
re2("re2 : 03");
// re("04"),re("05"),re("06"),re2("re2 : 02"),re2("re2 : 03") は関数が実行される。
■内部構造
_.after = function(times, func) {
// _.after() 設定時に返される関数。
return function() {
if (--times < 1) {
// _.after() の第1引数の「数 - 1」回、関数が実行されたら、それ以降の関数実行時、第2引数で指定した関数が発動する。
return func.apply(this, arguments);
}
};
};