169 похожих чатов

А код из тайпскрипта траспилится в яваскрипт? Каким образом он

обрабатывает типы при этом, интересно?
Может если вы посмотрите на полученный джс код, то поймете, что происходит с типами в данном случае?

Еще можно придумать всевозможные тесты, придумать с десяток разных значений для проверки, написать маленький тест, который будет перебирать все комбинации.

---
(Не знаю тайпскрипт, в основном сижу наблюдаю за чатиком)

12 ответов

19 просмотров

Компилятор тайпскрипта строит семантическое дерево на основании которого производит проверку типов. В рантайме можно проверить лишь классы (ну и плюс примитивы с помощью typeof) юзая JS-овский instanceof (насколько я знаю). Проверить type/interface в рантайме можно путем т.н. "type guard"-ов (что такое себе на самом деле. Есть свои недостатки)

Есть более интересные и надёжные методы https://github.com/gcanti/io-ts

Я вот typed-contracts предпочитаю. Оно попроще в использовании

У меня все везде на fp-ts завязано, потому иотс. Ну, тут по факту то же самое для igogo

А. Ну ещё у нас сваггер генерилка под io-ts есть и вопрос "попроще в использовании" уходит вообще :)

покажи?

https://github.com/devexperts/swagger-codegen-ts Доки не хватает только :( позже могу кинуть пример конфигурации и запуска

а мы свою написали 😄 но на шаблонах https://github.com/EvgenyiFedotov/swagger-to-js тупо любой код пресетом можно сгенерить

спасибо!

А мы свою😅

А. Так у нас adt выплевываются, а не pain data

а там без разницы можешь выплевывать все что хочешь

Похожие вопросы

Обсуждают сегодня

а через ESC-код ?
Alexey Kulakov
29
30500 за редактор? )
Владимир
47
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
program test; {$mode delphi} procedure proc(v: int32); overload; begin end; procedure proc(v: int64); overload; begin end; var x: uint64; begin proc(x); end. Уж не знаю...
notme
6
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
5
вы делали что-то подобное и как? может есть либы готовые? увидел картинку нокода, где всё линиями соединено и стало интересно попробовать то же в ddl на lua сделать. решил с ч...
Victor
8
Ребят в СИ можно реализовать ООП?
Николай
33
Подскажите пожалуйста, как в CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); получить наз...
A Z
7
Карта сайта