Масиви от обекти в 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 елементи
Нека декларираме масив, съдържащ в себе си DOM елементи:
let arr: HTMLElement[] = [];
Нека попълним нашия масив с данни:
let lst: NodeList = document.querySelectorAll('div');
let arr: HTMLElement[] = Array.from(lst);
Практически задачи
Създайте масив, чиито елементи ще бъдат регулярни изрази.
Създайте масив, чиито елементи ще бъдат промисове.
Създайте интерфейс, описващ служител. Създайте масив, състоящ се от обекти с тези служители.