Число, массив, объект в строку в JavaScript: как преобразовать в JS

В JavaScript часто возникает необходимость преобразовать число, массив или объект в строку. Это требуется при выводе данных, передаче информации в JSON, сохранении в localStorage или формировании URL. Для этого в языке есть несколько методов, каждый из которых подходит для определенных случаев.

Преобразование числа в строку

toString — стандартное преобразование числа

Метод toString() позволяет перевести число в строку.

const num = 123;
console.log(num.toString()); // '123'

Также можно указать систему счисления:

console.log(num.toString(2)); // '1111011' (двоичное представление)

String — приведение к строке

Функция String() также преобразует число в строку.

const num = 456;
console.log(String(num)); // '456'

Конкатенация с пустой строкой

Самый простой способ — сложить число с пустой строкой:

const num = 789;
console.log(num + ''); // '789'

Преобразование массива в строку

join — объединение элементов массива

Метод join() позволяет превратить массив в строку, используя разделитель.

const arr = [1, 2, 3, 4];
console.log(arr.join('-')); // '1-2-3-4'

Без аргумента используется запятая:

console.log(arr.join()); // '1,2,3,4'

toString — преобразование массива

Метод toString() работает аналогично join(), но всегда использует запятую.

console.log(arr.toString()); // '1,2,3,4'

JSON.stringify — сериализация массива

JSON.stringify() создаёт строку в формате JSON.

console.log(JSON.stringify(arr)); // '[1,2,3,4]'

Преобразование объекта в строку

JSON.stringify — сериализация объекта

Для объектов метод JSON.stringify() является основным способом превращения в строку.

const user = { name: 'Alice', age: 25 };
console.log(JSON.stringify(user)); // '{"name":"Alice","age":25}'

toString — стандартное преобразование

Встроенный toString() для объектов обычно возвращает [object Object], что не очень полезно.

console.log(user.toString()); // '[object Object]'

Object.entries + map + join — кастомное преобразование

Если нужно получить строку с ключами и значениями объекта:

const obj = { name: 'Alice', age: 25 };
const str = Object.entries(obj).map(([key, value]) => `${key}: ${value}`).join(', ');
console.log(str); // 'name: Alice, age: 25'

Выбор метода

Тип данныхМетод преобразованияРезультат
Числоnum.toString()'123'
ЧислоString(num)'123'
Числоnum + '''123'
Массивarr.join('-')'1-2-3'
Массивarr.toString()'1,2,3'
МассивJSON.stringify(arr)'[1,2,3]'
ОбъектJSON.stringify(obj)'{"name":"Alice","age":25}'
ОбъектObject.entries(obj).map(...).join()'name: Alice, age: 25'

Преобразование числа, массива и объекта в строку в JavaScript — частая операция при работе с текстовыми данными. Для чисел подходят toString() и String(), для массивов — join() и toString(), а для объектов — JSON.stringify(). Выбор метода зависит от задачи и необходимого формата строки.