Ответы пользователя по тегу TypeScript
  • В чем отличие type и interface. В каких случаях что использовать?

    @maltsever
    Привет! Грубо говоря, интерфейс лишь описывает функциональность. А класс, который реализует этот интерфейс, должен конкретно функциональность определить. Например:
    interface IVegetable {
        name: string;
        getCalories(): number;
    }

    А конкретный класс:
    class Tomato implements IVegetable {
        name: string = 'Tomato';
        getCalories() {
           return 18;
        }
    }

    Type - это лишь типизация какой-то переменной, как правило, нестандартной, Например, мы хотим определить тип, который будет описывать степень готовности стейков:
    type SteakRoast = 'medium' | 'rare' | 'welldone';
    Таким образом, мы можем присвоить переменной типа SteakRoast только эти предопределённые значения, а иначе Typescript заорёт из-за несоответствия типа.
    Ответ написан