2016-12-03 1 views
1

Ich habe eine function, die ein paar for Anweisungen enthält. Ich muss in der Lage sein, Code über Parameter an die for-Anweisungen zu übergeben.Weitergabe von Code-Blöcken an Funktionen/Funktionszeiger JavaScript

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 
    } 
}); 

Dies ist eine grundlegende Version von dem, was ich versuche zu tun. Das einzige Problem ist der Fehler, den ich in der Konsole erhalte.

Uncaught SyntaxError: Unexpected token [ 

Ich würde gerne wissen, wie diese Fehler zu beheben, oder eine Art und Weise, dass ich noch tun kann, was ich versuche zu tun.

Antwort

4

Sie könnten eine callback erstellen, dies ist eine Funktion, die der aufrufenden Funktion als Parameter übergeben wird.

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 
    } 
}); 
Verwandte Themen