鍍金池/ 教程/ HTML/ Node.js REPL終端
Node.js快速入門
Node.js事件發(fā)射器
Node.js包(JXcore)
Node.js事件循環(huán)
Node.js文件系統(tǒng)
Node.js npm
Node.js安裝和入門
Node.js工具模塊
Node.js回調(diào)概念
Node.js流
Node.js入門實例程序
Node.js教程
Node.js規(guī)范化應(yīng)用
Node.js REPL終端
Node.js緩沖器
Node.js RESTful API
Node.js全局對象
Linux安裝Node.js(源碼編譯安裝)
Node.js Web模塊
Node.js Express框架

Node.js REPL終端

REPL表示讀取評估和演示打印循環(huán)(Read Eval Print Loop),它代表一個命令輸入和系統(tǒng)在交互模式的輸出響應(yīng)窗口控制臺或Unix/ Linux的shell計算機環(huán)境。 Node.js附帶了一個REPL環(huán)境。它執(zhí)行以下期望的任務(wù)。

  • Read - 讀取用戶的輸入,解析在內(nèi)存中輸入JavaScript數(shù)據(jù)結(jié)構(gòu)和存儲。

  • Eval - 接受和評估計算數(shù)據(jù)結(jié)構(gòu)

  • Print - 打印結(jié)果

  • Loop - 循環(huán)上面的命令,直到用戶按Ctrl-C兩次。

Node REPL結(jié)合Node.js的代碼試驗非常有用,用于調(diào)試JavaScript代碼。

在線REPL終端

為了簡化學習,我們需要易于使用Node.js的REPL環(huán)境在線設(shè)置,在這里你可以練習Node.js的語法: Launch Node.js REPL Terminal 

啟動REPL

REPL可以通過簡單地運行在的shell/控制臺,而如下的任何參數(shù)來啟動。

$ node

會看到REPL命令提示符>在這里你可以輸入任何Node.js的命令:

$ node
>

簡單表達式

讓我們嘗試在Node.js的REPL命令提示符下完成簡單的數(shù)學計算:

$ node
> 1 + 3
4
> 1 + ( 2 * 3 ) - 4
3
>

使用變量

您可以使用變量之后存儲值和打印,就像傳統(tǒng)的腳本。 如果不使用var關(guān)鍵字接著值存儲在變量和打印。而如果是使用var關(guān)鍵字則值存儲不打印。您可以使用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循環(huán)的操作:

$ 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自動檢查表達式的連續(xù)性。

下劃線變量

您可以使用下劃線_得到最后的結(jié)果:

$ 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 - 加載文件的內(nèi)容在當前Node REPL會話

Stopping REPL

正如上面提到的,你需要按兩次Ctrl + C命令退出Node.js REPL。

$ node
>
(^C again to quit)
>