「JavaScript Ninja の秘密」を読んでいて、コールバックを繰り返す関数を強化するタスクを見つけました。
これがタスクです。「ページ作成者が反復インデックスに加えて任意の数の引数をコールバックに渡すこともできるように関数を拡張します。」
function forEach( list, callback ){
for( var n=0; n < list.length; n++ ){
callback.call( list[n], n );
}
}
var list = ['shuriken','katana','nunchucks'];
forEach(
list,
function(index){ console.log(index); console.log(this) }
)