在Node.js中,可以使用readline模块来迭代地从控制台获取用户输入。readline模块提供了一个接口,可以从可读流(如process.stdin)读取数据,并将其解析为逐行读取的数据。
以下是一个示例代码,演示如何使用readline模块从控制台获取用户输入:
const readline = require('readline');
const rl = readline.createInterface({
input: process.stdin,
output: process.stdout
});
function getUserInput() {
rl.question('请输入内容:', (answer) => {
// 在这里处理用户输入的内容
console.log(`您输入的内容是:${answer}`);
// 继续迭代获取用户输入
getUserInput();
});
}
// 开始获取用户输入
getUserInput();
在上述代码中,我们首先使用require语句引入了readline模块。然后,使用readline.createInterface方法创建了一个readline.Interface对象,指定了输入流为process.stdin(控制台输入)和输出流为process.stdout(控制台输出)。
接下来,我们定义了一个名为getUserInput的函数,该函数使用rl.question方法向用户提问,并在用户输入回答后执行回调函数。在回调函数中,我们可以处理用户输入的内容,并在控制台输出。
最后,我们调用getUserInput函数,开始获取用户输入。每当用户输入回答后,回调函数会被执行,并再次调用getUserInput函数,实现迭代地获取用户输入。
这种方式适用于需要迭代地获取用户输入的场景,例如命令行交互式应用程序、聊天机器人等。
腾讯云相关产品和产品介绍链接地址:
Elastic 中国开发者大会
云+社区技术沙龙[第6期]
腾讯云GAME-TECH游戏开发者技术沙龙
云+社区技术沙龙[第3期]
serverless days
腾讯云GAME-TECH沙龙
云+社区技术沙龙[第10期]
Elastic 实战工作坊
腾讯云GAME-TECH沙龙
腾讯云GAME-TECH游戏开发者技术沙龙
领取专属 10元无门槛券
手把手带您无忧上云