Diciamo che ho una funzione e un array. Voglio modificare l'array applicando la funzione a ciascuna voce nell'array. La funzione NON modifica direttamente il valore; restituisce un nuovo valore.Modo pulito per mappare un array in node.js o JavaScript
In pseudo-codice,
for (entry in array) {
entry = function(entry);
}
Ci sono un paio di modi per fare questo che si è verificato a me:
for (var i = 0; i < arr.length; i++) {
arr[i] = fn(i);
}
Oppure, dal momento che sto usando node.js e hanno costruito in sottolineatura :
arr = _.map(arr, fn);
Ma questo entrambi sembrano un po 'goffo. Il blocco standard "for" sembra eccessivamente prolisso e la funzione _.map riassegna l'intero array in modo da risultare inefficiente.
Come lo faresti?
Sì, sono consapevole che sto overthinking questo :)
Basta usare la funzione di sottolineatura finché non si è certi che si tratta di un problema di prestazioni. È molto leggibile e pulito, quindi a meno che non sia effettivamente un problema, la tua "sensazione di inefficienza" non dovrebbe impedirti di passare a questioni più urgenti :) – PatrikAkerstrand
Completamente vero! Sono solo curioso, comunque. – Eric