Массивы объектов в TypeScript
Массивы в TypeScript могут содержать в себе не только примитивы, но и объекты определенных типов. Давайте посмотрим на примерах, как работать с такими массивами.
Массив юзеров
Пусть у нас есть интерфейс, задающий юзера:
interface User {
name: string,
age: number
}
Объявим массив, указав в качестве типа его содержимого объекты с юзерами (т.е. объекты, реализующие наш интерфейс):
let arr: User[] = [];
Заполним наш массив данными указанного типа:
arr.push({name: 'john', age: 30});
arr.push({name: 'eric', age: 40});
Массив дат
Объявим массив, хранящий в себе массив дат:
let arr: Date[] = [];
Заполним этот массив датами:
arr.push(new Date(2030, 11, 31));
arr.push(new Date(2020, 11, 31));
Массив DOM элементов
Объявим массив, содержащий в себе дом элементы:
let arr: HTMLElement[] = [];
Заполним наш массив данными:
let lst: NodeList = document.querySelectorAll('div');
let arr: HTMLElement[] = Array.from(lst);
Практические задачи
Сделайте массив, элементы которого будут регулярными выражениями.
Сделайте массив, элементы которого будут промисами.
Сделайте интерфейс, описывающий работника. Сделайте массив, состоящий из объектов с этими работниками.