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