Adaugare array in acelasi array JS

Discutii si intrebari legate de scripturi si functii JavaScript, jQuery si Ajax, cod JavaScript in general.
Marius
Mesaje: 60

Adaugare array in acelasi array JS

Incerc sa adaug un array in acelasi array in javascript, Dar se pare ca nu functioneaza; al treilea element se adauga incontinuu.
Iata codul:

Cod: Selectaţi tot

var arr = ['Hello', 'World!']
arr.push(arr);
console.log(arr);
Rezultatul asteptat e: ['Hello', 'World!', ['Hello', 'World!']]

Stie cineva de ce codul meu nu functioneaza, si cum se poate rezolva?

MarPlo Mesaje: 4343
Nu functioneaza cum vrei fiindca adaugi aceeași referință la array. De aceea, când array-ul se actualizează, cel din interior va fi si el actualizat.
Pentru a remedia asta, trebuie să adaugi o copie a array-ului (o alta referință).
Vezi exemplul de mai jos.

Cod: Selectaţi tot

var arr = ['Hello', 'World!']
arr.push([...arr]);
console.log(arr);

Subiecte similare