TypeScript
2012年10月12日閲覧。 “And I think this is a pretty big misstep. If you're building web apps that run on anything other than Windows, you're likely using a Mac and most likely not using Visual Studio. You need the Visual Studio plug-in to get the IntelliSense. All you get without Visual Studio is the strong-typing. You don't get the productivity benefits you get from IntelliSense..”
↑ “TypeScript-Unterstützung für Eclipse”. heise Developer (2013年8月6日). 2015年4月26日閲覧。
↑ “TypeScript”. Eclipse Marketplace. Eclipse Foundation. 2015年4月26日閲覧。
↑ Hillar, Gastón (2013年5月14日). “Working with TypeScript in Visual Studio 2012”. Dr. Dobb's Journal. 2015年4月26日閲覧。
↑ “TypeStrong: The only TypeScript package you will ever need”.
TypeScriptはコンパイル時における型検査を可能にするために、型アノーテーションによる静的型付けの仕組みを提供している。この仕組みの利用は任意なので、この仕組みを無視して普通のJavaScriptの動的型付けを使うこともできる。
プリミティブ型のためのアノーテーションはnumber、boolean、stringである。弱い型付けあるいは動的型付けにする場合は、any型を用いる。
既にJavaScriptにコンパイルされた型を使うTypeScriptスクリプトから型情報を利用できるようにするために、型アノーテーションは別個の「宣言ファイル」に外出しすることが出来る。アノーテーションは、Node.jsやjQueryに対して行われたように、既存のJavaScriptライブラリに対しても宣言できる。
型が与えられていない場合、TypeScriptコンパイラは型を推論するために型推論を使う。例えば、上のコードにおけるadd メソッドは、もし戻り値型が何も与えられていなかったとしても、number型を返すと推論される。これは引数leftとrightが number型であること、および「二つのnumber型を加算した結果は常にnumber型である」というコンパイラ側の知識に基づいている。しかし、明示的に戻り値型を指定しておけば、コンパイラがその正しさを検証してくれる。
宣言の不足により型推論が不可能な場合、動的なany型がデフォルトで使われる。any型の値に対する操作は、JavaScriptと同様の操作をサポートしているので、any型に対する操作については最低限の静的型検査が行われるだけである。