TypeScript - массивы

Использование переменных для хранения значений накладывает следующие ограничения:

  • Переменные имеют скалярный характер. Другими словами, объявление переменной может содержать только одну переменную. Это означает, что для хранения n значений в программе потребуется n объявлений переменных. Следовательно, использование переменных невозможно, когда нужно хранить более крупный набор значений.

  • Переменным в программе выделяется память в случайном порядке, что затрудняет получение / чтение значений в порядке их объявления.

TypeScript вводит концепцию массивов для решения той же проблемы. Массив - это однородный набор значений. Чтобы упростить, массив - это набор значений одного типа данных. Это тип, определяемый пользователем.

Особенности массива

Вот список функций массива -

  • Объявление массива выделяет последовательные блоки памяти.

  • Массивы статичны. Это означает, что размер однажды инициализированного массива изменить нельзя.

  • Каждый блок памяти представляет собой элемент массива.

  • Элементы массива идентифицируются уникальным целым числом, которое называется индексом / индексом элемента.

  • Как и переменные, массивы также должны быть объявлены до их использования. Используйте ключевое слово var для объявления массива.

  • Инициализация массива относится к заполнению элементов массива.

  • Значения элементов массива можно обновлять или изменять, но нельзя удалить.

Объявление и инициализация массивов

Чтобы объявить инициализацию массива в Typescript, используйте следующий синтаксис:

Синтаксис

var array_name[:datatype];        //declaration 
array_name = [val1,val2,valn..]   //initialization

Объявление массива без типа данных считается любого типа. Тип такого массива выводится из типа данных первого элемента массива во время инициализации.

Например, объявление типа - var numlist:number[] = [2,4,6,8] создаст массив, как указано ниже -

По умолчанию указатель массива относится к первому элементу.

Arrays may be declared and initialized in a single statement. Синтаксис того же самого -

var array_name[:data type] = [val1,val2…valn]

Note - Пара [] называется размерностью массива.

Доступ к элементам массива

Имя массива, за которым следует нижний индекс, используется для ссылки на элемент массива. Его синтаксис следующий -

array_name[subscript] = value

Пример: простой массив

var alphas:string[]; 
alphas = ["1","2","3","4"] 
console.log(alphas[0]); 
console.log(alphas[1]);

При компиляции он сгенерирует следующий код JavaScript -

//Generated by typescript 1.8.10
var alphas;
alphas = ["1", "2", "3", "4"];
console.log(alphas[0]);
console.log(alphas[1]);

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

1 
2

Пример: объявление и инициализация одного оператора

var nums:number[] = [1,2,3,3] 
console.log(nums[0]); 
console.log(nums[1]); 
console.log(nums[2]); 
console.log(nums[3]);

При компиляции он сгенерирует следующий код JavaScript -

//Generated by typescript 1.8.10
var nums = [1, 2, 3, 3];
console.log(nums[0]);
console.log(nums[1]);
console.log(nums[2]);
console.log(nums[3]);

Его вывод выглядит следующим образом -

1 
2 
3 
3

Объект массива

Массив также можно создать с помощью объекта Array. Можно передать конструктор Array.

  • Числовое значение, представляющее размер массива или

  • Список значений, разделенных запятыми.

В следующем примере показано, как создать массив с помощью этого метода.

пример

var arr_names:number[] = new Array(4)  

for(var i = 0;i<arr_names.length;i++) { 
   arr_names[i] = i * 2 
   console.log(arr_names[i]) 
}

При компиляции он сгенерирует следующий код JavaScript.

//Generated by typescript 1.8.10
var arr_names = new Array(4);

for (var i = 0; i < arr_names.length; i++) {
   arr_names[i] = i * 2;
   console.log(arr_names[i]);
}

Его вывод выглядит следующим образом -

0 
2 
4 
6

Пример: Конструктор массива принимает значения, разделенные запятыми

var names:string[] = new Array("Mary","Tom","Jack","Jill") 

for(var i = 0;i<names.length;i++) { 
   console.log(names[i]) 
}

При компиляции он сгенерирует следующий код JavaScript -

//Generated by typescript 1.8.10
var names = new Array("Mary", "Tom", "Jack", "Jill");
for (var i = 0; i < names.length; i++) {
   console.log(names[i]);
}

Его вывод выглядит следующим образом -

Mary 
Tom 
Jack 
Jill

Методы массива

Список методов объекта Array с их описанием приведен ниже.

S.No. Метод и описание
1. concat ()

Возвращает новый массив, состоящий из этого массива, соединенного с другим массивом (ами) и / или значением (ями).

2. каждые ()

Возвращает истину, если каждый элемент в этом массиве удовлетворяет предоставленной функции тестирования.

3. фильтр()

Создает новый массив со всеми элементами этого массива, для которых предоставленная функция фильтрации возвращает истину.

4. для каждого()

Вызывает функцию для каждого элемента в массиве.

5. индекс чего-либо()

Возвращает первый (наименьший) индекс элемента в массиве, равный указанному значению, или -1, если ничего не найдено.

6. присоединиться()

Объединяет все элементы массива в строку.

7. lastIndexOf ()

Возвращает последний (наибольший) индекс элемента в массиве, равный указанному значению, или -1, если ничего не найдено.

8. карта()

Создает новый массив с результатами вызова предоставленной функции для каждого элемента в этом массиве.

9. поп ()

Удаляет последний элемент из массива и возвращает этот элемент.

10. От себя()

Добавляет один или несколько элементов в конец массива и возвращает новую длину массива.

11. уменьшить ()

Примените функцию одновременно к двум значениям массива (слева направо), чтобы уменьшить его до одного значения.

12. reduceRight ()

Примените функцию одновременно к двум значениям массива (справа налево), чтобы уменьшить его до одного значения.

13. обеспечить регресс()

Меняет порядок элементов массива на обратный: первый становится последним, а последний - первым.

14. сдвиг()

Удаляет первый элемент из массива и возвращает этот элемент.

15. ломтик()

Извлекает часть массива и возвращает новый массив.

16. несколько()

Возвращает истину, если хотя бы один элемент в этом массиве удовлетворяет предоставленной функции тестирования.

17. Сортировать()

Сортирует элементы массива.

18. сращивание ()

Добавляет и / или удаляет элементы из массива.

19. нанизывать()

Возвращает строку, представляющую массив и его элементы.

20. unshift ()

Добавляет один или несколько элементов в начало массива и возвращает новую длину массива.

Разрушение массива

Относится к разрушению структуры объекта. TypeScript поддерживает деструктуризацию при использовании в контексте массива.

пример

var arr:number[] = [12,13] 
var[x,y] = arr 
console.log(x) 
console.log(y)

При компиляции он сгенерирует следующий код JavaScript.

//Generated by typescript 1.8.10
var arr = [12, 13];
var x = arr[0], y = arr[1];
console.log(x);
console.log(y);

Его вывод выглядит следующим образом -

12 
13

Обход массива с использованием цикла for… in

Можно использовать for…in цикл для обхода массива.

var j:any; 
var nums:number[] = [1001,1002,1003,1004] 

for(j in nums) { 
   console.log(nums[j]) 
}

Цикл выполняет обход массива на основе индекса.

При компиляции он сгенерирует следующий код JavaScript.

//Generated by typescript 1.8.10
var j;
var nums = [1001, 1002, 1003, 1004];

for (j in nums) {
   console.log(nums[j]);
}

Вывод приведенного выше кода приведен ниже -

1001 
1002 
1003 
1004

Массивы в TypeScript

TypeScript поддерживает следующие концепции в массивах -

S.No. Концепция и описание
1. Многомерные массивы

TypeScript поддерживает многомерные массивы. Простейшей формой многомерного массива является двумерный массив.

2. Передача массивов в функции

Вы можете передать функции указатель на массив, указав имя массива без индекса.

3. Возврат массива из функций

Позволяет функции возвращать массив