CoffeeScript - 命令列工具



在 Node.js 上安裝 CoffeeScript 後,我們可以訪問 **coffee 命令列工具**。在這裡,**coffee** 命令是關鍵命令。使用此命令的各種選項,我們可以編譯和執行 CoffeeScript 檔案。

您可以使用 **coffee** 命令的 **-h** 或 **--help** 選項檢視其選項列表。開啟 **Node.js 命令提示符**並在其中執行以下命令。

c:\>coffee -help

此命令將為您提供 **coffee** 的各種選項列表,以及每個選項執行的操作說明,如下所示。

coffeecommand Help

編譯 CoffeeScript 程式碼

CoffeeScript 檔案以副檔名 **.coffee** 儲存。您可以使用 coffee 命令的 **-c 或 --compile** 選項編譯這些檔案,如下所示。

c:\>coffee -c filename.coffee

示例

假設您的系統中有一個檔案,其中包含以下 CoffeeScript 程式碼,該程式碼在控制檯上列印一條訊息。

name = "Raju"
console.log "Hello"+name+" Welcome to Tutorialspoint"

**注意** - **console.log()** 函式在控制檯上列印給定的字串。

要編譯上述程式碼,請將其儲存在名為 **sample.coffee** 的檔案中。開啟 Node.js 命令提示符。瀏覽到您儲存檔案的路徑,並使用 **coffee 命令列工具** 的 coffee 命令的 **-c** 選項編譯它,如下所示。

c:\> coffee -c sample.coffee

執行上述命令後,CoffeeScript 編譯器將編譯給定檔案 (sample.coffee) 並將其儲存在當前位置,名稱為 sample.js,如下所示。

JS File

如果您開啟 sample.js 檔案,您可以觀察到生成的 JavaScript 程式碼,如下所示。

// Generated by CoffeeScript 1.10.0
(function() {
  var name;
  name = "Raju";
  console.log("Hello " + name + " Welcome to Tutorialspoint");

}).call(this);

執行 CoffeeScript 程式碼

您可以透過簡單地將檔名傳遞給 Node.js 命令提示符中的 coffee 命令來執行 CoffeeScript 檔案,如下所示。

c:\> coffee sample.coffee

示例

例如,讓我們執行 sample.coffee 檔案。為此,請開啟 Node.js 命令提示符。瀏覽到您儲存檔案的路徑,並透過直接將檔名傳遞給 coffee 命令來執行該檔案,如下所示。

Execution

監視和編譯

在某些情況下,我們可能會對指令碼進行大量更改。使用 coffee 命令的 **–w** 選項,您可以監視指令碼的更改。

您可以使用 **-wc** 選項同時監視和編譯檔案,如下所示。當我們使用此選項時,每次您在指令碼中進行更改時,檔案都將重新編譯,並保留 Node.js 命令提示符,如下所示。

c:\>coffee -wc file_name

示例

假設我們使用 **-wc** 選項編譯了一個名為 **sample.coffee** 的檔案,並且我們修改了該指令碼三次。每次我們更改指令碼時,**.coffee** 檔案都會重新編譯,並保留 Node.js 命令提示符,如下所示。

Watch and compile

設定輸出目錄

使用 **-o** 選項,我們可以設定輸出目錄以放置編譯後的 JavaScript 檔案,如下所示。

c:\>coffee -o "Required path where we want our .js files" file_name

示例

讓我們將 sample.coffee 檔案的 JavaScript 程式碼儲存在 E 驅動器中名為 **data** 的資料夾中,使用 **-o** 選項,透過在命令提示符中執行以下命令。

c:\>coffee -o E://data sample.coffee

以下是執行上述命令後給定資料夾的快照。在這裡,您可以觀察到 sample.coffee 的 JavaScript 檔案。

Output Directory

列印編譯後的 JavaScript

如果我們希望在控制檯上列印編譯後的 javascript 本身,則必須使用 coffee 命令的 **-p** 選項,如下所示。

c:\>coffee -p file_name

示例

例如,您可以使用 -p 選項在控制檯上列印 sample.coffee 檔案的編譯後的 JavaScript 程式碼,如下所示。

Print JavaScript

REPL(讀取-求值-列印-迴圈)

CoffeeScript 為您提供了一個 REPL 互動式 shell。此 shell 用於評估 CoffeeScript 表示式。您可以在此 shell 中鍵入任何 CoffeeScript 程式碼並立即獲得結果。您可以透過在不使用任何選項的情況下執行 **coffee** 命令來開啟 REPL,如下所示。

Execute Coffee command

使用此 shell,我們可以為變數賦值、建立函式和評估結果。如以下螢幕截圖所示,如果我們在 REPL 中呼叫函式,它將列印函式的值。如果我們向它提供一個表示式,它將評估並打印表達式的結果。如果我們只是在其中鍵入語句,它將列印最後一條語句的值。

REPL Usage

在 REPL 中,您可以透過按 ctrl+v 訪問多行模式,您可以在其中評估包含多行程式碼(如函式)的程式碼,並且您可以透過再次按 ctrl+v 從中返回到 REPL 模式。這是一個多行模式的使用示例。

REPL Mutiline Function

透過瀏覽器執行 CoffeeScript

我們可以像 JavaScript 一樣使用 HTML 的 <script> 標記執行 CoffeeScript,如下所示。

<script src="http://jashkenas.github.com/coffee-script/extras/coffee-script.js"
   type="text/javascript" charset="utf-8"></script>
<script type="text/coffeescript">
  # Some CoffeeScript
</script>

但是,為此,我們必須在每個應用程式中匯入庫,並且 CoffeeScript 程式碼將在顯示輸出之前逐行解釋。這會降低應用程式的速度,因此不建議使用此方法。

因此,要在您的應用程式中使用 CoffeeScript,您需要使用 Coffee 命令列工具預編譯它們,然後您可以在您的應用程式中使用生成的 JavaScript。

廣告