標籤:code 程式 例子 判斷 客戶 input 斷行符號符 有一個 out
nodejs的api中有一個process進程對象,process 對象是一個 global (全域變數),提供有關資訊,控制當前 Node.js 進程。作為一個對象,它對於 Node.js 應用程式始終是可用的,故無需使用 require()。
process進程中提供了stdin和stdout用於接受鍵盤的輸入輸出資料流,下面我實現了一個控制台登陸的簡單的例子,接收控制台輸入的使用者名稱和密碼來判斷是否登陸成功。
代碼如下:
var q = "請輸入使用者名稱:";var users = { ‘admin‘: ‘1234‘, ‘user1‘: ‘1234‘, ‘user2‘: ‘1234‘}var isInputUserName = true;var username = "";process.stdout.write(q + "\n");//接收使用者輸入 監聽使用者的輸入process.stdin.on(‘data‘, (input) => { //輸入的字元最後肯定是一個斷行符號符 input = input.toString().trim(); //擷取一個索引值對集合中的所有鍵 if (!username) { if (Object.keys(users).indexOf(input) === -1) { //使用者名稱不存在 process.stdout.write(‘使用者名稱不存在‘ + ‘\n‘); process.stdout.write(q + "\n"); username = ""; } else { process.stdout.write(‘請輸入密碼:\n‘); username = input; } } else { if (input == users[username]) { console.log(‘登陸成功‘); username = ""; } else { process.stdout.write(‘密碼有誤,請重新輸入密碼:\n‘); } }});
在終端中node環境下執行該js代碼:
NodeJs實現用戶端登陸