angular.js - 為什么Angular2和Ionic2都用TypeScript開發(fā),TypeScript有什么優(yōu)勢嗎?
問題描述
今天看Angular2和Ionic2都用TypeScript開發(fā)的。
為什么Angular2和Ionic2都用TypeScript開發(fā),TypeScript有什么優(yōu)勢嗎?
問題解答
回答1:完全基于es6,完全面向?qū)ο蠡裫s變成強類型語言,而且兼容現(xiàn)在的js語法,不需要非得用強類型也能編譯通過。
簡單來說,面向?qū)ο笫呛脰|西,大家見過了C#和java的成熟,看js覺得處處坑爹。es6解決了一部分坑爹問題,而typescript則幾乎解決了所有問題,把js變成了好用的面向?qū)ο笳Z言。
學(xué)會面向?qū)ο蟮娜耍吹絫ypescript會覺得,這才是個正常的語言,這么多年,那個es5標(biāo)準(zhǔn)算是什么玩意。。。
當(dāng)然,不用typescript,只用純es6,其實也算不錯。主要是和當(dāng)下的es5一比,typescript就顯得特別優(yōu)秀。
回答2:個人覺得是因為,TypeScript 中引入了類型檢查,關(guān)于為什么需要類型檢查,可以看一下這篇文章《為什么 JavaScript 需要類型》
回答3:TypeScript的開發(fā)者c#之父,所以這個TypeScript的很多語言特性是從c#中移過來的。TypeScript大概是ES7的實現(xiàn),所以從語法角度來講,是具有很大優(yōu)勢。TypeScript可選擇編譯成ES5或ES3,ts文件編譯成js文件,并且ts文件可直接在瀏覽器中調(diào)試。TypeScript還有一大優(yōu)勢是配合宇宙最強編譯器VS,開發(fā)效率非常高。唯一的不足只是用TypeScript開發(fā)的人太少。
回答4:嚴(yán)格上來說Typescript / Javascript 及 Dart 都同時在Angular2得到支持只不過暫時官方文件大部份是Typescript
以我所知Google內(nèi)部是用Dart版本
回答5:強類型以后IDE可以靜態(tài)解析代碼,為intelli-sense這樣的功能提供支持
coding的時候能得到提示
強類型能幫你建立更加顯性,利于長期維護的抽象
https://www.delivoper.com/t/typescript/42
回答6:強類型是個好東西呀,不用擔(dān)心各種隱式轉(zhuǎn)換的問題。靜態(tài)類型可以提供編輯器靜態(tài)類型檢查,很多bug可以殺死在搖籃中。補充一點最關(guān)鍵的,angular2的基于類型做依賴注入比基于變量名作依賴注入爽多了,也安全多了
回答7:一切的語法糖都是為了便于維護。
