我试图创建一个帮助函数,允许我轻松地嵌套for循环。在我的特定脚本中,我有很多2D数组可供使用。
function array2D(iLen,jLen, callback){
var i, j;
for( i =0; i <iLen; i++){
for( j= 0; j <jLen; j++){
callback();
}
}
}
如果我想在回调函数中访问 i 或 j 迭代器,如何重写该函数?例如,如果我想将以下内容传递给array2D:
function(){
console.log(i +" "+j);
}
我试图在 array2D()中创建setter函数,但问题是返回i或j阻止函数操作完成。
答案 0 :(得分:1)
使用i
和j
function array2D(iLen,jLen, callback){
var i, j;
for( i =0; i <iLen; i++){
for( j= 0; j <jLen; j++){
callback(i,j);
}
}
}
并使用:
array2D(10, 20, function(i,j){
console.log(i+' '+j)
})
答案 1 :(得分:1)
您可以将功能定义为:
Target target = LifeTime.class.getAnnotation(Target.class);
ElementType[] elementTypes = target.value();
然后按照你已经完成的方式传递它。在你调用回调时,你必须传递参数。
var callback = function(i,j){
console.log(i +" "+j);
}
callback(i,j);
&#13;
答案 2 :(得分:0)
尝试使用arguments
callback(i, j);
function() {
console.log(arguments);
}