J'ai une récursif javascript simple fonction qui peut être appelée avec des arguments supplémentaires:Javascript slice.call (arguments) et récursion
AllDataRows(grid.Rows, process);
AllDataRows(grid.Rows, process, storeIDs);
Le problème est que si la fonction doit s'appeler alors des arguments supplémentaires sont perdu. J'ai essayé d'utiliser Array.prototype.slice.call(arguments, 2)
pour transmettre les arguments, mais ils se terminent par un tableau d'éléments. La fonction cb échoue alors car elle n'attend pas de tableau (ce serait une zone de texte cachée).
Comment puis-je résoudre ce problème?
Merci
function AllDataRows(rowList, cb) {
if (rowList.getRow(0).GroupByRow) {
for (var i = 0; i < rowList.length; i++)
AllDataRows(rowList.getRow(i).Rows, cb);
} else {
var args = Array.prototype.slice.call(arguments, 2);
for (var j = 0; j < rowList.length; j++)
cb.apply(rowList.getRow(j), args);
}
}
Doh! Nice et simple. Merci. – user497075