once() | Underscore JS 日本語リファレンス

複数回実行されても、1度しか実行しない関数を返す。

■使用例

function logged( txt ){
	var text = _.now();
	console.log( "re now : " + txt + " : "  + text );	
}
var re = _.once(logged);
var re2 =_.once(logged);
re("01");
re("02");
re2("re2 : 01");
re("03");
re("04");
re2("re2 : 02");
re("05");
re("06");
re2("re2 : 03");
// re("01");とre2("re2 : 01");しか実行されない。

■内部構造

// 指定回数未満しか実行しない_.before()を_.partial()に渡す。
  _.once = _.partial(_.before, 2);

このページのトップへ戻る