Skip to content
33 / 58

Как TypeScript обрабатывает structural typing vs nominal typing?

TypeScript использует структурную типизацию (structural typing): два типа совместимы, если у них одинаковая структура (набор полей и методов), а не одинаковое имя. В отличие от Java/C#, где class Dog и class Cat с одинаковыми полями -- разные типы (номинальная типизация), в TypeScript они взаимозаменяемы. Для имитации номинальных типов используют branded types.