Encodera

Спасибо, что читаете!

Пожертвуйте сайту, мы стараемся ради вас.

Как объединить два массива

Короткий ответ

Раскройте оба массива внутри новых квадратных скобок:

const a = [1, 2];
const b = [3, 4];
 
console.log([...a, ...b].join(', '));

Результат:

1, 2, 3, 4

Метод concat

То же самое делает concat(). Оба способа создают новый массив и не меняют исходные:

console.log([1, 2].concat([3, 4]).join(', '));

Результат:

1, 2, 3, 4

Без повторов

Пропустите результат через Set:

console.log([...new Set([...[1, 2], ...[2, 3]])].join(', '));

Результат:

1, 2, 3

Добавить в существующий массив

Чтобы добавить элементы одного массива в другой на месте, используйте push() с ...:

const cart = ['tea'];
const more = ['cake', 'coffee'];
cart.push(...more);
 
console.log(cart.join(', '));

Результат:

tea, cake, coffee

Частая ошибка

push() без ... добавляет весь массив одним вложенным элементом:

const cart = ['tea'];
cart.push(['cake', 'coffee']);
 
console.log(cart.length, JSON.stringify(cart));

Результат:

2 ["tea",["cake","coffee"]]

Функции из этого ответа

  • Array.prototype.concat — Объединяет массивы в новый массив.
  • Array.prototype.push — Добавляет элементы в конец массива.
  • Set — Коллекция уникальных значений.

Спасибо, что читаете!

Пожертвуйте сайту, мы стараемся ради вас.