Օբյեկտների զանգվածներ TypeScript-ում

TypeScript-ում զանգվածները կարող են պարունակել ոչ միայն պրիմիտիվներ, այլև որոշակի տիպերի օբյեկտներ: Դիտարկենք օրինակներ, թե ինչպես աշխատել նման զանգվածների հետ:

Օգտատերերի զանգված

Ենթադրենք ունենք օգտատերը նկարագրող ինտերֆեյս:

typescriptinterface User {
  name: string,
  age: number
}

Սահմանենք զանգված՝ որպես տիպ նշելով դրա պարունակության օբյեկտները օգտատերերով (այսինքն՝ օբյեկտներ, որոնք իրականացնում են մեր ինտերֆեյսը):

typescriptlet arr: User[] = [];

Լցնենք մեր զանգվածը նշված տիպի տվյալներով.

typescriptarr.push({name: 'john', age: 30});
arr.push({name: 'eric', age: 40});

Ամսաթվերի զանգված

Սահմանենք զանգված, որն իր մեջ կպահի ամսաթվերի զանգված.

typescriptlet arr: Date[] = [];

Լցնենք այս զանգվածը ամսաթվերով.

typescriptarr.push(new Date(2030, 11, 31));
arr.push(new Date(2020, 11, 31));

DOM էլեմենտների զանգված

Սահմանենք զանգված, որն իր մեջ կպարունակի DOM էլեմենտներ.

typescriptlet arr: HTMLElement[] = [];

Լցնենք մեր զանգվածը տվյալներով.

typescriptlet lst: NodeList = document.querySelectorAll('div');
let arr: HTMLElement[] = Array.from(lst);

Գործնական առաջադրանքներ

Задание 1

Ստեղծեք զանգված, որի էլեմենտները կլինեն կանոնավոր արտահայտություններ:

Задание 2

Ստեղծեք զանգված, որի էլեմենտները կլինեն պրոմիսներ:

Задание 3

Ստեղծեք աշխատող նկարագրող ինտերֆեյս: Ստեղծեք զանգված, որը կբաղկացած լինի այդ աշխատողներով օբյեկտներից: