В JavaScript, операторы и функции часто автоматически приводят значения к нужным типам данных. Однако иногда нам требуется явное преобразование значений в ожидаемый тип.
Давайте рассмотрим три основных типа преобразования: строковое, численное и логическое.
Строковое преобразование происходит, когда требуется представление значения в виде строки.
Например:
let value = true;
alert(typeof value); // boolean
value = String(value); // теперь value это строка "true"
alert(typeof value); // string
Преобразование происходит очевидным образом, где false становится строкой "false", а null становится "null" и так далее.
Численное преобразование применяется в математических функциях и выражениях.
Например:
alert("6" / "2"); // 3, строки преобразуются в числа
let str = "123";
alert(typeof str); // string
let num = Number(str); // становится числом 123
alert(typeof num); // number
Правила численного преобразования включают обработку undefined, null, true/false, и строк.
Например:
let age = Number("Любая строка вместо числа");
alert(age); // NaN, преобразование не удалось
Логическое преобразование самое простое и происходит в логических операциях. Оно может также быть выполнено явно с помощью функции Boolean(value).
alert(Boolean(1)); // true
alert(Boolean(0)); // false
alert(Boolean("Привет!")); // true
alert(Boolean("")); // false
Значения, которые интуитивно "пустые" (например, 0, пустая строка, null, undefined и NaN), становятся false. Все остальные значения становятся true.
Примеры:
alert(Number(" 123 ")); // 123
alert(Number("123z")); // NaN (ошибка чтения числа на месте символа "z")
alert(Number(true)); // 1
alert(Number(false)); // 0
alert(Boolean("0")); // true
alert(Boolean(" ")); // пробел это тоже true (любая непустая строка это true)
JavaScript предоставляет различные методы преобразования типов: строковое, численное и логическое.
Операторы и функции часто автоматически выполняют преобразование типов, но в некоторых случаях явное преобразование может быть полезным.Важно понимать правила преобразования, чтобы избежать неожиданного поведения в программе.
Будьте первым