TypeScript · Senior · Запитання 72 з 75

Чому явні обмеження generic кращі за приведення типів усередині узагальненої функції?

function byId<T extends { id: string }>(items: T[], id: string): T | undefined {
  return items.find((i) => i.id === id);
}

Пояснення

Приведення ((i as any).id) ховає помилки; обмеження документує й перевіряє вимогу.

Де почитати

Помилка в запитанні

TypeScript · Senior · запитання 72

Перевірте себе

Пройдіть тест TypeScript · Senior: запитання й варіанти перемішуються, а наприкінці - розбір помилок.

Пройти цей тест