TypeScript tuple — Кортежи

TypeScript tuple — Кортежи

От автора: временами у нас возникает необходимость хранить набор значений различных типов. Этой цели массивы послужить не смогут. В TypeScript tuple — это тип данных под названием кортежи, которые помогают решить эту задачу.

Они представляют набор разнородных значений. Другими словами, кортежи обеспечивают хранение множественных полей различных типов. Кортежи могут быт также переданы функциям в качестве параметров.

Синтаксис

var tuple_name = [value1,value2,value3,…value n]

Для примера

var mytuple = [10,"Hello"];

Вы можете объявить в Typescript пустой кортеж и инициализировать его позже.

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

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

Узнать подробнее
var mytuple = []; 
mytuple[0] = 120 
mytuple[1] = 234

Доступ к значениям в кортежах

Отдельно взятые значения кортежа называются элементами. Кортежи основываются на индексе. Это значит, что получить доступ к элементам в кортеже можно, используя их соответствующий числовой индекс. Индекс элемента в кортеже начинается с нуля и увеличивается до n-1 (где n — это размер кортежа).

Синтаксис

tuple_name[index]

Пример: Простой кортеж

var mytuple = [10,"Hello"]; //create a  tuple 
console.log(mytuple[0]) 
console.log(mytuple[1])

В вышеприведённои примере объявляется кортеж mytuple. Этот кортеж содержит значения числового и строчного типов данных соответственно. После компиляции, мы получим тот же код JavaScript. Результат выглядит следующим образом:

10 
Hello

Пример: Пустой кортеж

var tup = [] 
tup[0] = 12 
tup[1] = 23 

console.log(tup[0]) 
console.log(tup[1])

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

12 
23

Операции с кортежами

Кортежи в TypeScript поддерживают различные операции, например, отправку нового элемента, удаление элемента из кортежа и другие. Пример

var mytuple = [10,"Hello","World","typeScript"]; 
console.log("Items before push "+mytuple.length) // возвращает размер кортежа 

mytuple.push(12) // добавляет кортежу значение 
console.log("Items after push "+mytuple.length) 
console.log("Items before pop "+mytuple.length) 
console.log(mytuple.pop()+" popped from the tuple") // удаляет и возвращает последний элемент
 
console.log("Items after pop "+mytuple.length)

push() добавляет элемент в кортеж

pop() удаляет из кортежа и возвращает последнее значение

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

Items before push 4 
Items after push 5 
Items before pop 5 
12 popped from the tuple 
Items after pop 4

Модификация кортежей

Кортежи являются модифицируемыми, то есть мы можем их оптимизировать или изменять значения элементов кортежа. Пример

var mytuple = [10,"Hello","World","typeScript"]; //создание кортежа
console.log("Tuple value at index 0 "+mytuple[0]) 

//модификация элемента кортежа 
mytuple[0] = 121 
console.log("Tuple value at index 0 changed to "+mytuple[0])

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

Tuple value at index 0 10 
Tuple value at index 0 changed to 121

Деструктуризация кортежа

Деструктуризация означает разрушение структуры элемента. TypeScript поддерживает деструктуризацию, если речь идёт о кортежах. Пример

var a =[10,"hello"] 
var  = a 
console.log( b ) 
console.log( c )

После компиляции мы получим следующий JavaScript код:

//Сгенерировано посредством typescript 1.8.10
var a = [10, "hello"];
var b = a[0], c = a[1];
console.log(b);
console.log(c);

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

10 
hello 

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

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

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

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

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

Курс по ES 6 (EcmaScript 6.0)

Прямо сейчас посмотрите курс по EcmaScript 6.0

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

Метки:

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

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

Комментарии 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