Содержание
Основные понятия Преобразование типов: явное и неявное Проверка типа данных Преобразование строки Число в строку Булево значение в строку Массив в строку Объект в строку
Преобразование булевых значений Логическое значение и математическая операция Строка в булево значение Число в булево значение undefined
в булево значение null
в булево значениеОбъект в булево значение Массив в булево значение
Преобразование чисел Строка в число Булево значение в число null
в число Массив в число
Преобразование null
- Преобразование
undefined
Основные понятия
Примеры явного и неявного преобразования:
// Явное преобразование
let value = Number('23'); // 23
// Неявное преобразование
value = 5 + '25'; // '525'
Проверка типа данных
typeof
console.log(typeof value); // 'number', 'string', и т.д.
Преобразование строки
Число в строку
let value = String(10); // '10'
value = String(10 + 40); // '50'
value = (10 + 40).toString(); // '50'
value = new String(10 + 20); // '30'
Булево значение в строку
value = String(true); // 'true'
value = String(false); // 'false'
Массив в строку
value = String([1, 2, 3]); // '1,2,3'
value = String([]); // ''
Объект в строку
value = String({name: "Daniel"}); // '[object Object]'
Неявное преобразование к строке
value = 30 + ' ' + 30; // '30 30'
value = 30 + '' + undefined; // '30undefined'
Преобразование в число при математических операциях
value = 30 - ''; // 30
value = 30 - 'text'; // NaN
value = 30 - '5'; // 25
Преобразование булевых значений
Логическое значение и математическая операция
true
становится 1 false
становится 0
value = true + 5; // 6
value = false + 5; // 5
Строка в булево значение
value = Boolean('hello'); // true
value = Boolean(' '); // true
value = Boolean(''); // false
Число в булево значение
value = Boolean(-123); // true
value = Boolean(123); // true
value = Boolean(0); // false
undefined
value = Boolean(undefined); // false
null
value = Boolean(null); // false
Объект в булево значение
value = Boolean({}); // true
Массив в булево значение
value = Boolean([]); // true
Преобразование чисел
Строка в число
value = Number('23'); // 23
value = Number('string...lalala'); // NaN
value = parseInt(' 203px'); // 203
value = parseFloat('203.212px'); // 203.212
Булево значение в число
value = Number(true); // 1
value = Number(false); // 0
null
value = Number(null); // 0
Массив в число
value = Number([1, 2, 3]); // NaN
null
value = null + 5; // 5
Преобразование undefined
value = false + undefined; // NaN