Показать сообщение отдельно
  #77 (permalink)  
Старый 31.05.2023, 18:03
Аватар для voraa
Профессор
Отправить личное сообщение для voraa Посмотреть профиль Найти все сообщения от voraa
 
Регистрация: 03.02.2020
Сообщений: 2,717

Сообщение от webgraph
2. Часто возникают ошибки с типизацией
Ошибки с типизацией разные бывают
Одно дело, когда в переменную пихать то строки, то числа
Другое дело, если есть объект
obj = {a:1, b:2, c:3}
и вы вдруг ошиблись и написали
obj.A = 11;
то js это проглотит и не подавится. И ошибка потом может всплыть в самый непредсказуемый момент.
ts предупредит об ошибке, если объекту точно задан тип.
Есть и другие ситуации, когда, например, возвращаемое значение функции может быть разных типов (например null у querySelector) И ts также разумно предупредит об этом. И надо будет либо делать проверку (она действительно бывает необходима, но о ней можно просто забыть), либо убеждать ts, что я точно знаю, что null тут не будет
Ну и плюс самодокументация программы. Читать программу и понимать, что в переменной может быть и в каком типе проще, чем разбираться по коду, что в нее присвоили. Переменная может называться startDate, но по имени не скажешь, что в ней - Date, строка, целое число миллисекунд?

Меня в ts раздражает этап компиляции. Для небольшого проекта, особенно когда весь проект делаешь сам, это лишнее да и в js разобраться можно.
Ну и последующая отладка сгенерированного кода у меня вызывает трудности. Хотя может я знаю далеко не все.

Последний раз редактировалось voraa, 31.05.2023 в 18:16.
Ответить с цитированием