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