国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

node.js學習之交互式解釋器REPL詳解

2019-11-19 18:36:46
字體:
來源:轉載
供稿:網友

簡介

repl是Node.js提供的一個Read-Eval-Print-Loop (REPL,讀取-執行-輸出-循環)實現,它即可以做為一個獨立的程序使用,又可以包含在其它應用中使用。REPL是一個互式命令行解析器,它提供了一個交互式的編程環境,它可以實時的驗證你所編寫的代碼,非常適合于驗證Node.js和JavaScript的相關API。

Node 自帶了交互式解釋器,可以執行以下任務:

     讀取 - 讀取用戶輸入,解析輸入了Javascript 數據結構并存儲在內存中。

     執行 - 執行輸入的數據結構

     打印 - 輸出結果

     循環 - 循環操作以上步驟直到用戶兩次按下 ctrl-c 按鈕退出。

Node 的交互式解釋器可以很好的調試 Javascript 代碼。

  REPL既可以作為獨立單機程序,也可以被其他的程序包含在內的程序。

  它提供了一種交互方式,即“執行程序,展現結果”。

  它可以被用作debugging,testing 或者只是執行操作得到一些結果。

執行REPL

  打開命令行,到達node.js安裝的目錄,鍵入node

$ node> 

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

1)、簡單表達式

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

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

  注意: > 是REPL命令的提示符。

2)、使用變量

  你可以將數據存儲在變量中,并在你需要的使用它。

  變量聲明需要使用 var 關鍵字,如果沒有使用 var 關鍵字變量會直接打印出來。

  使用 var 關鍵字的變量可以使用 console.log() 來輸出變量。

$ node> x = 10> var y = 10undefined> x + y> console.log("Hello World")Hello Worldundefined

3)、多行表達式

  Node REPL 支持輸入多行表達式,這就有點類似 JavaScript。

接下來讓我們來執行一個 do-while 循環:

$ node> var x = 0undefined> do {... x++;... console.log("x: " + x);... } while ( x < 5 );x: 1x: 2x: 3x: 4x: 5undefined>

  ... 三個點的符號是系統自動生成的,你回車換行后即可。Node 會自動檢測是否為連續的表達式?! ?/p>

4)、使用函數

> var name="aaa"undefined> name'aaa'> function getName(){... console.log(this.name);... }undefined> getName()aaaundefined

  因為REPL環境內部使用eval函數來評估該表達式的執行結果,所以有些東西我們可以直接這樣寫,如對象:

> {a:1,b:2}{ a: 1, b: 2 }> [1,2,3,4,5][ 1, 2, 3, 4, 5 ]

5)、下劃線_

  使用_可以指代上一次的操作執行后的值,比如

  對象:

> {a:2,b:3}{ a: 2, b: 3 }> for(var key in _){... console.log("key="+key+",value="+_[key]);... }key=a,value=2key=b,value=3undefined

  數組:

> {a:2,b:3}{ a: 2, b: 3 }> for(var key in _){... console.log("key="+key+",value="+_[key]);... }key=a,value=2key=b,value=3undefined

  正確的結果:

> [1,2,3,4,5][ 1, 2, 3, 4, 5 ]   //數組> Object.keys(_).map(function(k){return _[k]*_[k]})[ 1, 4, 9, 16, 25 ]   //元素值

3、REPL命令

ctrl + c - 終止當前命令ctrl + c twice - 終止Node REPLctrl + d - 終止Node REPLUp/Down Keys - 查看命令歷史記錄和修改以前的命令tab Keys - 當前指令的列表help - 所有命令的列表break - 退出多行表達式clear - 從多行表達退出save filename - 當前Node REPL會話保存到文件中load filename - 加載文件的內容在當前Node REPL會話

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作能帶來一定的幫助,如果有疑問大家可以留言交流。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 克拉玛依市| 安宁市| 佛教| 萨迦县| 双牌县| 桃源县| 苏尼特右旗| 武邑县| 苍溪县| 潞西市| 宜良县| 东莞市| 肥城市| 鄄城县| 侯马市| 长武县| 祁阳县| 青浦区| 神木县| 寿阳县| 灌阳县| 滦南县| 蓝山县| 拜城县| 亳州市| 华宁县| 梁山县| 江源县| 奉新县| 阿坝县| 和田市| 富蕴县| 乌鲁木齐县| 丹凤县| 浠水县| 买车| 和硕县| 延寿县| 政和县| 县级市| 广昌县|