Non sembra esserci un modo per estendere un array JavaScript esistente con un altro array, ovvero per emulare il extendmetodo Python .
Voglio ottenere quanto segue:
>>> a = [1, 2]
[1, 2]
>>> b = [3, 4, 5]
[3, 4, 5]
>>> SOMETHING HERE
>>> a
[1, 2, 3, 4, 5]
So che esiste un a.concat(b)metodo, ma crea un nuovo array invece di estendere semplicemente il primo. Vorrei un algoritmo che funzioni in modo efficiente quando aè significativamente più grande di b(cioè uno che non copia a).
Nota: questo non è un duplicato di Come aggiungere qualcosa a un array? - l'obiettivo qui è quello di aggiungere l'intero contenuto di un array all'altro e di farlo "sul posto", cioè senza copiare tutti gli elementi dell'array esteso.
a.push(...b). È simile nel concetto alla risposta migliore, ma aggiornato per ES6.