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代碼。
為了簡化學習,我們需要易于使用Node.js的REPL環(huán)境在線設(shè)置,在這里你可以練習Node.js的語法: Launch Node.js REPL Terminal
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 >
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會話
正如上面提到的,你需要按兩次Ctrl + C命令退出Node.js REPL。
$ node > (^C again to quit) >