String()

String() - это встроенная функция JavaScript, которая преобразует значение в строку.

Если Number() помогает получить число, то String() делает обратную вещь: берет значение и превращает его в текстовый формат.

let value = String(25);

console.log(value);
console.log(typeof value);

В консоли будет:

25
string

На экране число 25 и строка ‘25’ выглядят почти одинаково. Но для JavaScript это разные типы данных.

Что такое String()

String() преобразует переданное значение в строку.

let number = 10;
let text = String(number);

console.log(typeof number);
console.log(typeof text);

Результат:

number
string

Переменная number хранит число, а переменная text хранит уже строку.

Важно: как и Number(), функция String() не меняет исходную переменную сама по себе. Она возвращает новое значение.

Синтаксис

Общая запись выглядит так:

String(value);

value - это значение, которое нужно преобразовать в строку.

Например:

String(100);
String(true);
String(null);

Чаще всего результат сохраняют в переменную:

let result = String(100);

console.log(result);

Как преобразовать число в строку

Самый простой пример - преобразование числа.

let age = 18;
let textAge = String(age);

console.log(textAge);
console.log(typeof textAge);

В консоли будет:

18
string

Теперь textAge - это не число, а строка.

Это можно увидеть при сложении:

let number = 10;
let text = String(number);

console.log(number + 5);
console.log(text + 5);

Результат:

15
105

В первом случае JavaScript сложил числа. Во втором случае он склеил строку ‘10’ и число 5.

Преобразование true и false

String() может преобразовывать логические значения.

let isReady = true;
let textReady = String(isReady);

console.log(textReady);
console.log(typeof textReady);

Результат:

true
string

Значение true стало строкой ‘true’.

С false будет так же:

console.log(String(false));

В консоли будет:

false

Здесь важно не запутаться: строка ‘false’ - это уже не логическое значение false, а обычный текст.

String(), null и undefined

String() спокойно работает с null и undefined.

console.log(String(null));
console.log(String(undefined));

Результат:

null
undefined

Но это будут именно строки:

console.log(typeof String(null));
console.log(typeof String(undefined));

В консоли будет:

string
string

То есть null превращается в строку ‘null’, а undefined - в строку ‘undefined’.

Зачем использовать String()

На первых уроках String() может пригодиться, когда нужно явно показать JavaScript, что значение должно быть текстом.

Например, мы хотим собрать строку с номером урока:

let lessonNumber = 5;
let title = 'Урок ' + String(lessonNumber);

console.log(title);

Результат:

Урок 5

В этом примере JavaScript и без String() смог бы преобразовать число при склеивании строки. Но явная запись часто помогает лучше понимать, что происходит в коде.

Еще пример - проверить результат преобразования через typeof:

let count = 12;
let textCount = String(count);

console.log(typeof count);
console.log(typeof textCount);

Результат:

number
string

Частые ошибки

Первая ошибка - забыть сохранить результат.

let value = 100;

String(value);

console.log(typeof value);

В консоли будет:

number

Функция String(value) вернула строку, но мы ее никуда не записали. Поэтому переменная value осталась числом.

Правильно так:

let value = 100;

value = String(value);

console.log(typeof value);

Теперь результат будет:

string

Вторая ошибка - думать, что строка ‘false’ работает как логическое false.

let value = String(false);

console.log(value);
console.log(typeof value);

В переменной будет текст ‘false’. Это уже строка, а не boolean.

Третья ошибка - забывать про склеивание строк.

let count = String(10);

console.log(count + 5);

Результат будет:

105

Потому что count - строка, а оператор + в таком случае выполняет склеивание.

String() - простой способ явно преобразовать значение в строку. Он помогает лучше понимать типы данных и видеть разницу между числом 10 и строкой ‘10’.