Как преобразовать массив в строку
Короткий ответ
Метод join() склеивает элементы через разделитель:
console.log(['red', 'green', 'blue'].join(', '));Результат:
red, green, blueJSON
Для передачи данных и вложенных массивов подходит JSON.stringify():
console.log(JSON.stringify(['a', ['b', 'c'], 1]));Результат:
["a",["b","c"],1]Список с союзом
Intl.ListFormat соединяет элементы так, как пишут люди, с союзом перед последним:
const list = new Intl.ListFormat('en', { style: 'long', type: 'conjunction' });
console.log(list.format(['tea', 'coffee', 'juice']));Результат:
tea, coffee, and juiceЧастая ошибка
Преобразование массива в строку без join() даёт запятые без пробелов. Массивы объектов превращаются в бесполезный текст, поэтому для них используйте JSON.stringify():
console.log(String(['a', 'b', 'c']));
console.log(String([{ id: 1 }]));
console.log(JSON.stringify([{ id: 1 }]));Результат:
a,b,c
[object Object]
[{"id":1}]Функции из этого ответа
- Array.prototype.join — Объединяет элементы массива в строку.
- JSON.stringify — Преобразует значение в строку в формате JSON.