Перейти к основному содержимому
Об авторе
Проекты
Знания
Знания/TypeScript/type-vs-interface

Когда уместнее использовать `type`, а когда `interface` в TypeScript?

СобеседованиеИнтерфейсы и типы

interface:

  • Описание форм объектов/классов
  • Поддерживает extends, implements и декларативное слияние (declaration merging)
  • Кешируется компилятором — быстрее при пересечениях

type:

  • Объединения (|) и пересечения (&)

  • Условные и шаблонные типы

  • Алиасы примитивов, кортежей, mapped types

  • interface может расширять type, если тот раскрывается в объектный тип (не union)

  • Нельзя выразить union через interface; для этого используют type

  • Главная
  • Об авторе
  • Проекты
  • Знания
Логотип nKolmykov