История изменений
Исправление KivApple, (текущая версия) :
Прошёл по первой ссылке. Там проверка типа используется как раз потому что функция принимает несколько типов аргументов в рантайме.
В такой ситуации приходится извращаться с чисто джавоскриптовским подходом. typeof это конструкция из JS и TS ничего к ней не добавляет, а переводит 1 в 1 в JS. Хотя всё равно сможет отследить часть ошибок (в кейсах где typeof даёт какие-то гарантии).
Надо понимать, что код на TS при компиляции превращается в код на JS. И не считая некоторого сахара (типа тех же классов, optional chain и т. д. - кстати, эти фичи постепенно перетекают в JS) превращается 1 в 1, просто удалением аннотаций. Но TS выполняет статический анализ корректности кода в плане типов (а вот это в JS пока не перетекает).
Исправление KivApple, :
Прошёл по первой ссылке. Там проверка типа используется как раз потому что функция принимает несколько типов аргументов.
В такой ситуации приходится извращаться с чисто джавоскриптовским подходом. typeof это конструкция из JS и TS ничего к ней не добавляет, а переводит 1 в 1 в JS. Хотя всё равно сможет отследить часть ошибок (в кейсах где typeof даёт какие-то гарантии).
Надо понимать, что код на TS при компиляции превращается в код на JS. И не считая некоторого сахара (типа тех же классов, optional chain и т. д. - кстати, эти фичи постепенно перетекают в JS) превращается 1 в 1, просто удалением аннотаций. Но TS выполняет статический анализ корректности кода в плане типов (а вот это в JS пока не перетекает).
Исправление KivApple, :
Прошёл по первой ссылке. Там проверка типа используется как раз потому что функция принимает несколько типов аргументов.
В такой ситуации приходится извращаться с чисто джавоскриптовским подходом. typeof это конструкция из JS и TS ничего к ней не добавляет, а переводит 1 в 1 в JS. Хотя всё равно сможет отследить часть ошибок (в кейсах где typeof даёт какие-то гарантии).
Надо понимать, что код на TS при компиляции превращается в код на JS. И не считая некоторого сахара (типа тех же классов) превращается 1 в 1, просто удалением аннотаций. Но TS выполняет статический анализ корректности кода в плане типов.
Исправление KivApple, :
Прошёл по первой ссылке. Там проверка типа используется как раз потому что функция принимает несколько типов аргументов.
В такой ситуации приходится извращаться с чисто джавоскриптовским подходом. typeof это конструкция из JS и TS ничего к ней не добавляет, а переводит 1 в 1 в JS. Хотя всё равно сможет отследить часть ошибок (в кейсах где typeof даёт какие-то гарантии).
Исходная версия KivApple, :
Прошёл по первой ссылке. Там проверка типа используется как раз потому что функция принимает несколько типов аргументов.
В такой ситуации приходится извращаться с чисто джавоскриптовским подходом. typeof это конструкция из JS и TS ничего к ней не добавляет, а переводит 1 в 1 в JS. Хотя всё равно сможет отследить часть ошибок.