Преобразование типов
Типы относящиеся к одной категории так же как и различную валюту можно конвертировать друг в друга. Преобразование типов (type conversion, typecasting) — это процесс заключающийся в преобразовании (конвертации) значения одного типа в значение другого типа.
Преобразование типов делятся на явные и неявные преобразования.
Неявные преобразования
Неявные преобразования не требуют никаких языковых конструкций и не приводят к утрате данных.
Примером неявного преобразования может служить преобразование значения типа int
в тип double
. Являясь 64-битным вещественным типом, double
может хранить любое значение 32-битного целочисленного типа int
.
Как показано на изображении выше, преобразование int
в double
не приводит к потере данных, так как 32-битное значение умещается в 64 битах.
Явные преобразования
Явные преобразования, которые для ясности часто называют приведением типов, происходят при участии разработчика и требуют указания языковых конструкций, называемых операторами приведения. Приведение типов требуется тогда, когда в процессе преобразования данные могут быть утрачены или по каким-то причинам процесс может завершиться ошибкой. Самым простым примером явного преобразования служит преобразование типа double, используемого для хранения 64-битных значений с плавающей запятой, к целочисленному типу int.
Примеры
TypeScript предоставляет встроенные функции для выполнения преобразования типов.
Можно преобразовать число в строку, используя конструктор строки, как показано ниже.
let number: number = 42
let numberAsString: string = String(number) //Перевод числа в строку
Также можно наоборот, перевести строку в число.
llet stringAsNumber: string = '42'
let number: number = Number(stringAsNumber)
console.log(number)
Вопросы
Преобразование типов(typecasting) - это ...
- Процесс конвертации значения одного типа в значение другого типа
- Изменение значения числа
- Изменение знака числа
Требуют ли неявные преобразование каких либо языковых конструкций?
- Да
- Нет
Теряются ли данные при неявном преобразовании?
- Да
- Нет
Где используются операторы приведения?
- В неявных преобразованиях
- В явных преобразованиях
- В обоих случаях.
Ссылки:
Contributors ✨
Thanks goes to these wonderful people (emoji key):
Philipp Dvinyaninov | Dmitriy Vasilev 💵 |