91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Node.js中如何使用readline模塊實現終端輸入

發布時間:2022-02-18 17:09:56 來源:億速云 閱讀:323 作者:iii 欄目:開發技術

本文小編為大家詳細介紹“Node.js中如何使用readline模塊實現終端輸入”,內容詳細,步驟清晰,細節處理妥當,希望這篇“Node.js中如何使用readline模塊實現終端輸入”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學習新知識吧。

1 概述

readline是Node.js里實現標準輸入輸出的封裝好的模塊,通過這個模塊我們可以以逐行的方式讀取數據流。使用require("readline")可以引用模塊。

使用readline步驟:
1、引入:require('readline')
2、創建readline對象(接口)
3、調用接口的相關方法
4、監聽和處理readline事件

示例代碼:

// 引入readline模塊
const readline = require("readline");

// 創建readline接口實例
let r1 = readline.createInterface({
    input: process.stdin,
    output: process.stdout
})

//調用接口方法
r1.question("你叫什么名字\t", function (answer) {
    console.log("我的名字是:", answer);
    // 不加close,則不會結束
    r1.close();
})

//close事件監聽
r1.on("close", function () {
    // 結束程序
    process.exit(0);
})

Node.js中如何使用readline模塊實現終端輸入

2 readline的使用

第一步:createInterface創建了一個接口實例
第二步:調用相關方法,如question方法輸入
第三步:監聽readline的close事件

注意:
1、在createInterface里,需要傳入標準輸入輸出作為數據的輸入輸出流
2、在question方法的回調函數里,可以獲取到用戶的輸入并進行處理,同時進行了close操作來結束程序,否則程序不會結束
3、在close事件的監聽里,執行了process.exit(0)來使程序退出的操作,因為readline模塊只要一開始獲取用戶輸入就不會結束,必須使用這種直接的方式來結束程序

3 示例1:輸入輸出

示例代碼:

// 引入readline模塊
let readline = require("readline");

// 創建接口實例
let r1 = readline.createInterface({
    input: process.stdin,
    output: process.stdout
})

// 調用接口方法
r1.on("line", function (line) {
    switch (line.trim()) {
        case "copy":
            console.log("復制");
            break;
        case "hello":
            r1.write("Hello ");
            console.log("World!");
            break;
        case "close":
            r1.close();
            break;
        default:
            console.log("沒有找到命令!");
            break;
    }
})

// close事件監聽
r1.on("close", function () {
    console.log("再見");
    process.exit(0);
})

Node.js中如何使用readline模塊實現終端輸入

注意:'line’事件,這個事件就是在用戶輸完一行,按下回車后就會觸發的事件,它會將用戶輸入的數據通過回調函數傳回來,可在此方法里處理用戶輸入的數據

4 示例2:模擬命令行的輸入輸出

示例代碼:

// 引入readline模塊
let readline = require("readline");

// 創建接口實例
let r1 = readline.createInterface({
    input: process.stdin,
    output: process.stdout
})

// 方法方法setPromat(promat) ,就是給每一行設置一個提示符,
// 就好比window命令行的> ,這里設置的是Test>
r1.setPrompt("Test> ");
// prompt()是最重要的方法,因為它體現了readline的核心作用,
// 以行為單位讀取數據,prompt方法就是在等待用戶輸入數據
r1.prompt();

// 調用接口方法
// 監聽了'line' 事件,因為prompt方法調用一次就只會讀取一次數據
// 所以,在這個方法又調用了一次prompt方法,這樣就可以繼續讀取用戶輸入
// 從而達到一種命令行的效果
r1.on("line", function (line) {
    switch (line.trim()) {
        case "copy":
            console.log("復制");
            break;
        case "hello":
            console.log("World!");
            break;
        case "close":
            r1.close();
            break;
        default:
            console.log("沒有找到命令!");
            break;
    }
    r1.prompt();
});

// close事件監聽
r1.on("close", function () {
    console.log("再見");
    process.exit(0);
})

Node.js中如何使用readline模塊實現終端輸入

說明:
1、方法setPromat(promat) ,就是給每一行設置一個提示符,就好比window命令行的> ,這里設置的是Test>
2、prompt()是最重要的方法,因為它體現了readline的核心作用,以行為單位讀取數據,prompt方法就是在等待用戶輸入數據
3、監聽了’line’ 事件,因為prompt方法調用一次就只會讀取一次數據,所以,在這個方法又調用了一次prompt方法,這樣就可以繼續讀取用戶輸入,從而達到一種命令行的效果

讀到這里,這篇“Node.js中如何使用readline模塊實現終端輸入”文章已經介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領會,如果想了解更多相關內容的文章,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

陇西县| 卢氏县| 永靖县| 湟源县| 留坝县| 兰州市| 什邡市| 广饶县| 定州市| 色达县| 通河县| 通渭县| 天津市| 永福县| 察雅县| 张北县| 莱西市| 渝中区| 教育| 宝应县| 淮滨县| 麟游县| 拜城县| 霍州市| 阿合奇县| 呼和浩特市| 宜宾县| 泸溪县| 上蔡县| 南涧| 晋宁县| 鹤壁市| 庆安县| 阿克| 凤凰县| 敦化市| 潼关县| 溧阳市| 英德市| 邢台县| 长沙县|