Não parece haver uma maneira de estender uma matriz JavaScript existente com outra matriz, ou seja, emular o extend
método do Python .
Eu quero alcançar o seguinte:
>>> a = [1, 2]
[1, 2]
>>> b = [3, 4, 5]
[3, 4, 5]
>>> SOMETHING HERE
>>> a
[1, 2, 3, 4, 5]
Eu sei que existe um a.concat(b)
método, mas ele cria uma nova matriz em vez de simplesmente estender a primeira. Eu gostaria de um algoritmo que funcione eficientemente quando a
for significativamente maior que b
(isto é, um que não copie a
).
Nota: Esta não é uma duplicata de Como acrescentar algo a uma matriz? - o objetivo aqui é adicionar todo o conteúdo de uma matriz à outra e fazê-lo "no lugar", ou seja, sem copiar todos os elementos da matriz estendida.
a.push(...b)
. O conceito é semelhante à resposta principal, mas atualizado para o ES6.