TypeScript · Senior · Запитання 72 з 75
Чому явні обмеження generic кращі за приведення типів усередині узагальненої функції?
function byId<T extends { id: string }>(items: T[], id: string): T | undefined {
return items.find((i) => i.id === id);
}- ✓Правильна відповідь: Обмеження дає компілятору змогу перевіряти звернення до властивостей і зберігає
Tточним для тих, хто викликає - 2Приведення швидше
- 3Обмеження - лише документація
Пояснення
Приведення ((i as any).id) ховає помилки; обмеження документує й перевіряє вимогу.