1

我正在阅读“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) }
    )
4

1 回答 1

0

用户可以将任意数量的参数传递给回调。您可以简单地使用 arguments 参数来读取它们。

例如。

...list ,function(){
  for (var i = 0; i < arguments.length; i++) {
    console.log(arguments[i]);
  }
}
于 2013-06-08T04:37:16.407 回答