对比Javascript和TypeScript
JavaScript
特點:
1. JavaScript是解釋性腳本語言,不需要編譯,可以直接在瀏覽器中解釋執行
2. 是基于對象的語言,可以創建對象并使用現有對象
3. 是弱類型、動態語言,基于對象和事件驅動
4. 較安全,跨平臺,僅在瀏覽器端執行,不會訪問本地硬盤數據
優點:
1. 發展較早,使用人數多
2. 無需編譯,可以直接執行
3. 沒有類的概念,開發更為靈活
TypeScript
ts是面向對象的編程語言,是JavaScript的超集,包含JavaScript所有元素,可以載入Js運行,擴展了Js的語法。TypeScript支持on-the-fly編譯,即寫一句ts就立即得到對應的js,不需要完整的語句寫完,就可以根據上下文推導生成對應的、不完整的js代碼。編譯的目標代碼是Es6,若有es6新特性問題時會向下兼容es5,但對于各個瀏覽器自行對js做的擴充,ts不保證予以支持。
特點:
1. 屬于開源語言,使用Apache授權協議
2. 增加了靜態類型、類、模塊、接口和類型注解
3. 所有的ts聲明(*.d.ts)都不會聲稱對應的js,因為js對象模型中的聲明是可選的。
優點:
1.靜態輸入,可以在開發時就發現錯誤,使得提高代碼質量
2. 大型項目開發、多人開發時,更為安全、容易、更好協作,降低亂碼和錯誤的機會
3. 代碼編譯器創建優化的JavaScript,在解釋執行時,鑒于瀏覽器的運行原理,可以減少無類型變量解釋時間
4. 函數缺省參數值:可選(xxx?: yyy)和默認參數(沒有參數傳入是,使用默認值xxx = yyy)
JavaScript和TypeScript的主要差異
1. JavaScript可以與TypeScript共同使用,TypeScript可以使用編譯器轉換成JavaScript
2. TypeScript在擴展了JavaScript的類概念及核心語言方面,如TypeScript可以使用類型和接口等概念既描述正在使用的數據,又能快速檢測錯誤
3. TypeScript通過類型注解提供編譯時的靜態類型檢查
4. TypeScript引入模塊module的概念,可以把聲明、數據、函數和類封裝在模塊中
5. TypeScript需要被編譯成JavaScript,才能在瀏覽器執行
6. TypeScript編譯時支持有限的函數重載(overload),js不支持重載
ps:求監督,求審查~~
總結
以上是生活随笔為你收集整理的对比Javascript和TypeScript的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: EChart.js 简单入门
- 下一篇: 微信小程序(6)模板详解 templat