Immagina di avere una struttura di array nidificata.Qual è il underscore.js equivalente all'operatore SelectMany di LINQ?
var nested = [ [1], [2], [3] ];
Utilizzando underscore.js, come vorrei produrre un allineamento appiattita?
In C# si dovrebbe usare Enumerable.SelectMany
come questo:
var flattened = nested.SelectMany(item => item);
Si noti che il lambda in questo caso seleziona direttamente la voce nidificato, ma avrebbe potuto essere qualsiasi espressione arbitraria.
In jQuery, è possibile utilizzare solo:
var flattened = $.map(nested, function(item) { return item; });
Tuttavia questo approccio non funziona con la funzione di sottolineatura map.
Quindi, come posso ottenere l'array appiattito [1, 2, 3]
utilizzando underscore.js?
uso _.flatten? – yngccc
si potrebbe anche scrivere: _.map (nested, function (item) {return item [0];}) – Darragh
@Darragh, che funzionerebbe per il mio esempio specifico, ma non quando gli array figlio contengono più elementi. –