我尝试转移到cloud9作为全时IDE,因为它似乎是我的chromebook上的最佳选择。但是,我试图创建一个需要用户输入文本的基本程序,但我所教的代码var x = prompt("y");
似乎在node.js中不起作用。
如何获取用户输入并将其存储为node.js中的变量?
答案 0 :(得分:10)
var readline = require('readline');
var rl = readline.createInterface({
input: process.stdin,
output: process.stdout
});
rl.question("What do you think of node.js? ", function(answer) {
// TODO: Log the answer in a database
console.log("Thank you for your valuable feedback:", answer);
rl.close();
});
取自http://nodejs.org/api/readline.html#readline_readline
更具体地说,将此代码填入app.js文件,然后运行以下命令
node app.js
回答上面的问题。
会发生什么? require语句公开了' readline'的公共方法。模块,其中之一是' createInterface'方法。此方法将输入和输出作为选项。
从它的外观来看,可以指定不同的输入和输出源,但在这种情况下,您正在使用' stdin'和' stdout'全局节点'进程的属性'变量。这些指定输入和输出控制台。
接下来,您调用已创建的readline对象的问题方法,并指定回调函数以将用户输入显示给用户。 '关闭'在readline上调用以将控制权释放回调用者。
答案 1 :(得分:0)
看看Reading value from console, interactively。
您只能在浏览器中使用JavaScript的BOM(浏览器对象模型)功能,而不能在Node JS中使用。