сложно, объясните пожалуйста зачем нужно создавать функции как типы?
пример функции которая конвертирует один тип в другой, но у нее нет реализации
type AdminkaToOld = (cfg: OldConfig) => NewConfig
Например для dependency injection Тип - это протокол, у него может быть множество имплементаций Например filter() может принимать лямбду
я не очень понимаю, как созданный мной тип завязать на имплементацию функции, по сигнатуре? иными словами - это как контракт, который по сигнатуре определяет какие функции можно использовать?
Я не понимаю вопроса )
Типизация структурная, если тип реализации подходит под сигнатуру, то его можно передавать/использовать. Необязательно делать явную связь типов
вот есть у нас тип (на оопшном диалекте я воспринимаю как делегат) type ConvertToNew = (cfg: OldConfig) => NewConfig и есть метод с конкретной реализацией function convertToNew(cfg: OldConfig) return ({ .... }) как реальный метод связан с абстрактным типом? как используется этот тип: допустим я хочу создать новый объект забирая данные из старого, как в конструкторе используеться этот делегат?
Fun(x: ConvertToNew) {….} Тип задают типо сокета, замочной скважины Что в неё подойдёт - то подойдёт Тут гибко ) const f: ConvertToNew = тут тоже что в дырку типа подойдёт )
Обсуждают сегодня