TypeScript — Тип объединения

TypeScript — Тип объединения

От автора: TypeScript 1.4 даёт программам возможность комбинировать один или два типа. Тип объединения Union — это эффективный способ выразить значение, которое может быть одного из нескольких типов. Два или больше типов данных можно комбинировать при помощи символа конвейеризации (|), обозначающего тип Union. Другими словами, тип Union пишется как последовательность типов, разделённых вертикальными чертами.

Синтаксис: Литерал типа Union

Type1|Type2|Type3

Пример: Переменная типа Union

var val:string|number 
val = 12 
console.log("numeric value of val "+val) 
val = "This is a string" 
console.log("string value of val "+val)

В вышеприведённом примере тип переменной — это тип Union. Это значит, что переменная может содержать либо число, либо строку в качестве её значения. После компиляции мы получим следующий JavaScript код:

//Сгенерировано посредством typescript 1.8.10
var val;
val = 12;
console.log("numeric value of val " + val);
val = "This is a string";
console.log("string value of val " + val);

Результат выглядит следующим образом:

Фреймворк VUE JS: быстрый старт, первые результаты

Получите бесплатный курс и создайте веб-приложение на трендовой Frontend-технологии VUE JS с полного нуля

Узнать подробнее
numeric value of val  12 
string value of val this is a string

Пример: Тип Union и параметры функции

function disp(name:string|string[]) { 
 if(typeof name == "string") { 
 console.log(name) 
 } else { 
 var i; 
 
 for(i = 0;i<name.length;i++) { 
 console.log(name)
 } 
 } 
} 
disp("mark") 
console.log("Printing names array....") 
disp(["Mark","Tom","Mary","John"])

Функция disp() может принимать аргумент либо типа string, либо массива строк. После компиляции мы получим следующий код JavaScript:

//Сгенерировано посредством typescript 1.8.10
function disp(name) {
 if (typeof name == "string") {
 console.log(name);
 } else {
 var i;
 for (i = 0; i < name.length; i++) {
 console.log(name);
 }
 }
}

disp("mark");
console.log("Printing names array....");
disp(["Mark", "Tom", "Mary", "John"]);

Результат вышеприведённого кода выглядит следующим образом:

Mark 
Printing names array…. 
Mark 
Tom
Mary
John

Тип Union и массивы

Типы Union можно применять также к массивам, свойствам и интерфейсам. Следующий пример иллюстрирует использование типа объединения с массивом.

Пример: Тип Union и массив

var arr:number[]|string[]; 
var i:number; 
arr = [1,2,4] 
console.log("**numeric array**") 

for(i = 0;i<arr.length;i++) { 
 console.log(arr) 
} 

arr = ["Mumbai","Pune","Delhi"] 
console.log("**string array**") 

for(i = 0;i<arr.length;i++) { 
 console.log(arr) 
}

Программа объявляет массив. Массив может представлять набор чисел коллекцию или набор строк. После компиляции мы получим следующий код JavaScript:

//Сгенерировано посредством typescript 1.8.10
var arr;
var i;
arr = [1, 2, 4];
console.log("**numeric array**");

for (i = 0; i < arr.length; i++) {
 console.log(arr);
}
arr = ["Mumbai", "Pune", "Delhi"];
console.log("**string array**");

for (i = 0; i < arr.length; i++) {
 console.log(arr);
}

Результат выглядит следующим образом:

**numeric array** 
1 
2 
4 
**string array** 
Mumbai 
Pune 
Delhi

Источник: https://www.tutorialspoint.com/

Редакция: Команда webformyself.

Фреймворк VUE JS: быстрый старт, первые результаты

Получите бесплатный курс и создайте веб-приложение на трендовой Frontend-технологии VUE JS с полного нуля

Узнать подробнее

Курс по TypeScript

Прямо сейчас посмотрите курс по TypeScript!

Смотреть курс

Метки:

Похожие статьи:

Комментарии Вконтакте:

Комментарии Facebook:

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Я не робот.

Spam Protection by WP-SpamFree