Итоги: практика по обобщенным функциям
Часть раздела Введение в TypeScript путешествия по JavaScript на Coddy. Урок 62 из 73.
Задание
ЛегкоСоздайте универсальную функцию с именем makePair, которая принимает два аргумента разных типов и возвращает их в виде кортежа (tuple).
Функция должна:
- Использовать два параметра универсального типа
TиU - Принимать параметр
firstтипаT - Принимать параметр
secondтипаU - Возвращать кортеж типа
[T, U] - Иметь явную аннотацию типа возвращаемого значения
Протестируйте свою функцию, создав следующие переменные:
stringNumberPair— вызовитеmakePairс"Hello"и42booleanStringPair— вызовитеmakePairсtrueи"World"numberBooleanPair— вызовитеmakePairс100иfalse
Используйте деструктуризацию для извлечения значений из ваших кортежей:
- Деструктурируйте
stringNumberPairв переменныеtextиnum - Деструктурируйте
booleanStringPairв переменныеflagиmessage
Выведите следующие результаты:
- Выведите
text - Выведите
num - Выведите
flag - Выведите
message - Выведите первый элемент
numberBooleanPair - Выведите второй элемент
numberBooleanPair - Выведите результат вызова
makePairс"TypeScript"и2024, обратившись к первому элементу - Выведите результат вызова
makePairс99и"bottles", обратившись ко второму элементу
Попробуйте сами
// TODO: Напишите свой код здесь
// Создайте универсальную функцию makePair с параметрами типа T и U
// Функция должна принимать два параметра и возвращать кортеж
// TODO: Протестируйте свою функцию, создав необходимые переменные
// stringNumberPair, booleanStringPair, numberBooleanPair
// TODO: Используйте деструктуризацию для извлечения значений из кортежей
// Деструктурируйте stringNumberPair и booleanStringPair, как указано
// TODO: Выведите все необходимые результаты
// Выведите text, num, flag, message и другие необходимые значенияВсе уроки раздела Введение в TypeScript
1Начало работы с TS
Что такое TypeScript?Зачем использовать TypeScript?Ваш первый код на TypeScriptПроцесс компиляции и ошибкиИтоги: Введение в TS4Работа с функциями
Типизация параметров и возвращаемых значенийТипизация стрелочных функцийТип возвращаемого значения 'void'Необязательные параметры с '?'Значения параметров по умолчаниюТипизация Rest-параметровОпределение типов функцийИтоги: Создание типизированных функций2Основные типы
Базовые типы: str, num, booleanТип 'any': лазейкаТип 'unknown'Работа с 'null' и 'undef'Вывод типов в действииЯвные аннотации типовИтоги: Практика по основным типам5Типы: псевдонимы, объединения и пересечения
Псевдонимы типов для примитивовТипы объединения ('|')Работа с типами объединенияЛитеральные типыТипы пересечения ('&')Комбинирование псевдонимов типовИтоги: продвинутые комбинации типов3Структуры данных: массивы и кортежи
Типизированные массивыМодификатор 'readonly' для массивовЧто такое кортеж?Объявление кортежей и доступ к нимДеструктуризация кортежейКортежи readonlyМногомерные типизированные массивыОператор spread с массивамиИтоги: массивы и кортежи6Типизация объектов и интерфейсы
Встроенные аннотации типов объектовПсевдонимы типов для объектовВведение в интерфейсыИнтерфейсы против псевдонимов типовНеобязательные и Readonly свойстваРасширение интерфейсов и типовДобавление методов в интерфейсыИтоги: Определение структуры объектов9Обобщения: первое знакомство
Проблема, которую решают обобщенияСоздание обобщенной функции IdentityИспользование обобщенной функцииОбобщенные массивыОбобщенные интерфейсыИтоги: практика по обобщенным функциямПотренируйтесь самостоятельно: Онлайн-компилятор JavaScript