- Lack of strong and static typing (strict variable types).
- Access modifiers (public, private, static).
- Lack of interfaces and inheritance.
- Modules (partially solved with require.js, although it is far from perfect).
- Strong typing
- Interfaces and inheritance
- Array Types
- Classes and modules
There are several on the market such as CoffeeScript and Babel, but TS is supported by Microsoft and personally we find its documentation and syntax much more rich and friendly. An example of its use is Angular2 which has been written entirely in TypeScript.
If you want to have a closer look at TypeScript you can use the online compiler Playground.
To install and learn TypeScript we obviously recommend their web site and read all their documentación, but there are currently free basic courses available:
https://www.edx.org/course/introduction-typescript-microsoft-dev201x-1 (without certificate)