REPL表示讀取評估和演示列印迴圈(Read Eval Print Loop),它代表一個命令輸入和系統在交互模式的輸出回應窗口控制臺或Unix/ Linux的shell電腦環境。 Node.js附帶了一個REPL環境。它執行以下期望的任務。
-
Read - 讀取用戶的輸入,解析在內存中輸入JavaScript數據結構和存儲。
-
Eval - 接受和評估計算數據結構
-
Print - 列印結果
-
Loop - 迴圈上面的命令,直到用戶按Ctrl-C兩次。
Node REPL結合Node.js的代碼試驗非常有用,用於調試JavaScript代碼。
線上REPL終端
為了簡化學習,我們需要易於使用Node.js的REPL環境線上設置,在這裏你可以練習Node.js的語法: Launch Node.js REPL Terminal
啟動REPL
REPL可以通過簡單地運行在的shell/控制臺,而如下的任何參數來啟動。
$ node
會看到REPL命令提示符>在這裏你可以輸入任何Node.js的命令:
$ node >
簡單運算式
讓我們嘗試在Node.js的REPL命令提示符下完成簡單的數學計算:
$ node > 1 + 3 4 > 1 + ( 2 * 3 ) - 4 3 >
使用變數
您可以使用變數之後存儲值和列印,就像傳統的腳本。 如果不使用var關鍵字接著值存儲在變數和列印。而如果是使用var關鍵字則值存儲不列印。您可以使用console.log列印變數()。
$ node > x = 10 10 > var y = 10 undefined > x + y 20 > console.log("Hello World") Hello Workd undefined
多行表達
Node REPL支持類似於JavaScript的多行表達。讓我們來看看以下do-while迴圈的操作:
$ node > var x = 0 undefined > do { ... x++; ... console.log("x: " + x); ... } while ( x < 5 ); x: 1 x: 2 x: 3 x: 4 x: 5 undefined >
... 自動打開自帶括弧後,當您按下進入。Node自動檢查運算式的連續性。
下劃線變數
您可以使用下劃線_得到最後的結果:
$ node > var x = 10 undefined > var y = 20 undefined > x + y 30 > var sum = _ undefined > console.log(sum) 30 undefined >
REPL 命令
-
ctrl + c - 終止當前命令
-
ctrl + c twice - 終止Node REPL
-
ctrl + d - 終止Node REPL
-
Up/Down Keys - 查看命令歷史記錄和修改以前的命令
-
tab Keys - 當前指令的列表
-
.help - 所有命令的列表
-
.break - 退出多行運算式
-
.clear - 從多行表達退出
-
.save filename - 當前Node REPL會話保存到檔中
-
.load filename - 加載檔的內容在當前Node REPL會話
Stopping REPL
正如上面提到的,你需要按兩次Ctrl + C命令退出Node.js REPL。
$ node > (^C again to quit) >