
Typescriptは、JavaScriptでコンパイルされたスクリプト言語です。 マイクロソフトの開発は、これまでにファンと悪者の両方を獲得することに成功しました。 初心者にとっての主な質問は、「なぜ必要なのですか?」だけではありません。
長所と短所を説明する記事、言語の説明、および作業例が無駄になっているため、かなり大きなアプリケーションで作業する場合の実際的な結論を説明したいと思います。
主な利点から始めましょう。
- 強い型付け
- コードの読みやすさ
- JavaScriptへの直接入力よりも厳密な型付けの世界からの移行が容易
- JavaScriptの後方互換性
- 広範なIDEサポート
強い型付け
オブジェクトとクラスのプロパティとメソッドをより完全に記述することができます。これにより、メソッドや関数に含まれるすべての引数をチェックする必要があります。
function checkAllMyArgsAgain(check, me, please) { if(check && me && please) { if(check instanceof CheckObject){ console.log('!'); } else { console.log(' ...') } if(me){ } // ....... } }
, TypeScript :
function checkAllMyArgsAgain(check: CheckObject, me: MeObject, please: string): string { return ' ? ? '; }
, :
, , TypeScript , , Javascript.
, , JavaScript, - …
function checkMe(check, me) { if(check && me) { if(check){ ... } if(me){ ... } } } function andCheckMe(check, me) { if(check && me) { if(check){ ... } if(me){ ... } } } function andCheckMeToo(check, me) { if(check && me) { if(check){ ... } if(me){ ... } } }
:
function checkMe(check: CheckObject, me: MeObject) { console.log(' !'); } function andCheckMe(check: CheckObject, me: MeObject) { console.log(' '); } function andCheckMeToo(check: CheckObject, me: MeObject) { console.log(' '); }
, JS, , , TS .
JS
JS, . TS, JS, .
JS
, , , , TS + JS TS, .
IDE
TypeScript, , IDE, IDEA, WebStorm, Sublime, Atom, . , .
:
- Debug
- ?
, , , , , , JavaScript .
— JS TS. , .d.ts , . , , jQuery, .
«» , , , , JS, .
, , , , , , , , .
Debug
, , , , , . , , , TypeScript. IDE: WebStorm Visual Studio , , JS , , , . TS .
?
, JS , TS: , , . , TS TS . Microsoft , TS open-source? , , TS — , , Microsoft, .
Microsoft, , , : Skype, Nokia, Windows Phone, Windows Vista, .
, - , .
, !