TypeScript 和 JavaScript 的區別


TypeScript 和 JavaScript 都用於客戶端處理伺服器請求並在 UI 上呈現資料。兩者都是指令碼語言,但是 TypeScript 支援一些附加功能,因此有時被認為是 JavaScript 的超集。閱讀本文,瞭解更多關於 TypeScript 和 JavaScript 的資訊以及這兩種語言的不同之處。

什麼是 JavaScript?

JavaScript 最常作為網頁的組成部分使用。它的網頁實現允許客戶端指令碼與使用者互動並建立動態網站。它是一種解釋型程式語言,可以處理面向物件的功能。

JavaScript 最大的優勢之一是它不需要使用昂貴的開發工具。您可以使用像記事本這樣的簡單文字編輯器開始。因為它是在 web 瀏覽器環境中解釋的語言,您甚至不需要獲取編譯器來使用它。

JavaScript 的特性

以下是 JavaScript 的一些特性:

  • 所有流行的 web 瀏覽器都支援 JavaScript,因為它們都有一個內建的環境來執行它。

  • JavaScript 完全採用了 C 計算機語言的語法和結構。因此,我們可以將其歸類為“結構化程式語言”。

  • JavaScript 是一種弱型別程式語言,這意味著某些型別會自動轉換(取決於操作)。

  • 在 JavaScript 中,繼承是透過原型而不是類來處理的。

  • JavaScript 可以在 Windows、macOS 等多種作業系統上執行。

建立互動式網頁通常需要使用 JavaScript。它的主要應用包括客戶端驗證、建立動態下拉選單、包含日期和時間功能、建立新視窗和對話方塊(如警報對話方塊、確認對話方塊和提示對話方塊)等。

JavaTester.js

請看下面的示例程式碼:

<script type="text/javascript"> document.write("Hello World"); </script>

什麼是 TypeScript?

TypeScript 是一種強型別、面向物件、編譯型語言。可以認為它是 JavaScript 的超集。開發和推廣 TypeScript 的目的是為了克服 JavaScript 的一些問題,例如它無法處理所有面向物件的概念、缺乏強型別檢查和編譯時錯誤檢查。

TypeScript 的特性

以下是 TypeScript 的一些主要特性:

  • TypeScript 編譯器將用 TypeScript 編寫的指令轉換成其 JavaScript 等價物。

  • TypeScript 採用 JavaScript 的基本構建塊。它支援所有其他 JS 庫。因此,要使用 TypeScript,您只需要瞭解 JavaScript。

  • TypeScript 生成的 JavaScript 可以重用所有現有的 JavaScript 框架、工具和庫。有效的 ".js" 檔案可以重新命名為 ".ts" 並與其他 TypeScript 檔案一起編譯。

  • TypeScript 可在瀏覽器、裝置和作業系統之間移植。它可以在 JavaScript 執行的任何環境中執行。

  • JavaScript 是一種解釋型語言,而 TypeScript 會編譯程式碼並在發現任何語法錯誤時生成編譯錯誤。

  • TypeScript 支援面向物件程式設計的概念,如類、介面、繼承等。

JavaTester.ts

請看下面的 TypeScript 程式碼:

var hello: string = "Hello"; var world: string = "World"; console.log(hello + " from " + world);

它將產生以下輸出:

Hello from World

TypeScript 和 JavaScript 的區別

下表重點介紹了 TypeScript 和 JavaScript 之間的重大區別:

關鍵 TypeScript JavaScript
型別 TypeScript 是一種強型別的面向物件編譯型語言。它由微軟開發。 JavaScript 是一種輕量級的解釋型語言。它由 Netscape 公司引入。
內部實現 TypeScript 的內部實現不允許它在伺服器端使用。它只能在客戶端使用。 JavaScript 可以在客戶端和伺服器端使用。
資料繫結 為了在程式碼級別繫結資料,TypeScript 使用型別和介面等概念來描述正在使用的資料。 JavaScript 中沒有引入這樣的概念。
編譯 用 TypeScript 編寫的程式碼首先需要編譯,然後轉換成 JavaScript。這個轉換過程稱為轉譯。 JavaScript 不需要編譯。
模組化程式設計 TypeScript 支援模組,因此它允許模組化程式設計。 JavaScript 不支援模組,因此它不允許模組化程式設計。
函式中的可選引數 在用 TypeScript 編寫的函式程式碼中允許任意數量的可選引數。 JavaScript 不支援可選引數函式。

結論

您應該注意的最重要的一點是,TypeScript 的開發是為了克服 JavaScript 的侷限性。TypeScript 是強型別的、面向物件的和編譯型的,而 JavaScript 是輕量級的和解釋型的。TypeScript 被認為是 JavaScript 的超集。

更新於:2022年8月25日

2K+ 次瀏覽

開啟你的職業生涯

透過完成課程獲得認證

開始學習
廣告