Преобразование типов
Строковое преобразование
String(value)
alert(typeof value); // string
Численное преобразование
Number(str)
let num = Number(str); // становится числом 123
| Значение | Преобразуется в… |
|---|---|
| undefined | NaN |
| null | 0 |
| true / false | 1 / 0 |
| string | Пробельные символы (пробелы, знаки табуляции \t, знаки новой строки \n и т. п.) по краям обрезаются. Далее, если остаётся пустая строка, то получаем 0, иначе из непустой строки «считывается» число. При ошибке результат NaN. |
alert( Number(" 123 ") ); // 123
alert( Number("123z") ); // NaN (ошибка чтения числа на месте символа "z")
alert( Number(true) ); // 1
alert( Number(false) ); // 0
Логическое преобразование
Boolean(value)
Происходит в логических операциях, но также может быть выполнено явно с помощью функции Boolean(value).
Правило преобразования:
- Значения, которые интуитивно «пустые», вроде 0, пустой строки, null, undefined и NaN, становятся false.
- Все остальные значения становятся true.
| Значение | Становится… |
|---|---|
| 0, null, undefined, NaN, "" | false |
| любое другое значение | true |
alert( Boolean(1) ); // true
alert( Boolean(0) ); // false
alert( Boolean("Привет!") ); // true
alert( Boolean("") ); // false
🚀 Источник: https://learn.javascript.ru/types