Генерички типски променливи во TypeScript

Кога креираме функција од генерички тип, TypeScript нè принудува на правилно користење на типските променливи во нејзиното тело. Следствено, треба да го разгледаме однесувањето на секој параметар што се пренесува во функцијата, од аспект на сите достапни типови за нас.

Ајде да креираме функција за одредување на должината на променлива од генерички тип:

typescriptfunction myFunc <T> (data: T): T {
  console.log(data.length); // грешка
  return data;
}

Грешката се јавува затоа што не сите типови имаат должина. На пример, за булови вредности таквото дејство е невозможно. Сепак, ако го прецизираме типот и го означиме како низа, тогаш кодот ќе работи правилно. Бидејќи секоја низа, без разлика од кој тип е, има должина:

typescriptfunction myFunc <T> (data: T[]): T[] {
  console.log(data.length); // 3
  return data;
}

console.log(myFunc([1, 3, 5])); // [ 1, 3, 5 ]
Задание 1

Напишете функција за прелистување и печатење на сите елементи од низа од генерички тип во конзола.