Ответ
TypeScript — это надмножество JavaScript, но есть альтернативы:
- Flow — статический анализатор от Facebook, легковесный, но менее популярный.
// @flow
function sum(a: number, b: number): number {
return a + b;
}
-
PureScript — строго типизированный язык, компилируемый в JS, с влиянием Haskell.
-
ReasonML (BuckleScript) — синтаксис OCaml, строгая типизация, работает с React.
-
Dart — язык от Google, с опциональной типизацией, используется во Flutter.
-
Elm — функциональный язык для фронтенда с сильной типизацией и отсутствием runtime-ошибок.
-
ClojureScript — компилятор Clojure в JS, динамическая типизация, иммутабельность.
Для крупных проектов чаще выбирают TypeScript из-за интеграции с экосистемой JS.