将代码块传递给 functions/function 指针 JavaScript

Passing blocks of code to functions/function pointers JavaScript

我有一个 function,里面有几个 for 语句。我需要能够通过参数将代码传递给 for 语句。

var a = function(paramCode){
    for(var eachRow=0; eachRow<20; eachRow++){
        for(var eachCol=0; eachCol<20; eachCol++){
            paramCode
        }
    }
}

a({ //the code I want to pass is surrounded in the function pointers
    if(array[x][y]){
        //do something
    }
});

这是我正在尝试做的事情的基本版本。唯一的问题是我在控制台中遇到的错误。

Uncaught SyntaxError: Unexpected token [

我很想知道如何解决这个错误,或者我仍然可以做我想做的事情的方法。

你可以创建一个callback,这是一个作为参数传递给调用函数的函数。

var a = function (callback) {
        for (var eachRow = 0; eachRow < 20; eachRow++) {
            for (var eachCol = 0; eachCol < 20; eachCol++) {
                callback(array, eachRow, eachCol);
            }
        }
    };

a(function (array, x, y) {
    if (array[x][y]){
        //do something
    }
});