Próbuję znaleźć sposób użycia funkcji JS Array.prototype.map()
z funkcją, która ma jeden dodatkowy parametr więcej (jeśli to możliwe, i chciałbym do uniknięcia konieczności dodania do wbudowanego wbudowanego Array.prototype.map()
). Dokumentacja ta jest bardzo dobra, ale nie obejmuje "jeden lub-bardziej-dodatkowy parametr" przypadek:Wywołanie zwrotne JS za pomocą mapy() z funkcją, która ma jeden dodatkowy parametr
https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/map
function doOpSingle(elem)
{
// do something with one array element
}
var A = ["one", "two", "three", "four"];
var x = A.map(doOpSingle); // this will execute doOpSingle() on each array element
Tak daleko, tak dobrze. Ale co, jeśli dana funkcja ma dwa parametry, np. E. sol. Flaga może chcesz lub je (myśleć bitowych masek)
function doOpSingle2(arrelem,flag)
{
// do something with one array element
}
var A = ["one", "two", "three", "four"];
var theFlag = util.getMask(); // call external function
var y = A.map(doOpSingle2(theFlag)); // this does not work!
Wszelkie rozwiązania należy zrobić bezfor
pętli, oczywiście, bo to dlaczego mamy map()
, aby nasz kod czyszczący w/uzyskiwanie pozbądź się tych!
+1, zrealizowany po zaksięgowaniu mojej odpowiedzi :) – SuperSaiyan
TY! To najprawdopodobniej będzie jedynym sposobem na pokrycie tego zadania (poza bind()). Podziękowania dla innych osób udzielających odpowiedzi. – syntaxerror