cam*_*ace 57 javascript console input spidermonkey
我目前正在使用spidermonkey来运行我的JavaScript代码.我想知道是否有一个从控制台获取输入的函数,类似于Python的工作方式:
var = raw_input()
Run Code Online (Sandbox Code Playgroud)
或者在C++中:
std::cin >> var;
Run Code Online (Sandbox Code Playgroud)
我环顾四周,到目前为止我发现的是如何使用prompt()和confirm()函数从浏览器获取输入.
Moo*_*Goo 40
好旧的readline();
请参阅MDN文档:https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey/Introduction_to_the_JavaScript_shell#readline.28.29
Key*_*van 15
正如您所提到的,prompt适用于一直回到 IE 的浏览器:
var answer = prompt('question', 'defaultAnswer');
Run Code Online (Sandbox Code Playgroud)
对于 Node.js > v7.6,您可以使用console-read-write,它是低级readline模块的包装器:
const io = require('console-read-write');
async function main() {
// Simple readline scenario
io.write('I will echo whatever you write!');
io.write(await io.read());
// Simple question scenario
io.write(`hello ${await io.ask('Who are you?')}!`);
// Since you are not blocking the IO, you can go wild with while loops!
let saidHi = false;
while (!saidHi) {
io.write('Say hi or I will repeat...');
saidHi = await io.read() === 'hi';
}
io.write('Thanks! Now you may leave.');
}
main();
// I will echo whatever you write!
// > ok
// ok
// Who are you? someone
// hello someone!
// Say hi or I will repeat...
// > no
// Say hi or I will repeat...
// > ok
// Say hi or I will repeat...
// > hi
// Thanks! Now you may leave.
Run Code Online (Sandbox Code Playgroud)
披露我是控制台读写的作者和维护者
对于 SpiderMonkey,readline就像@MooGoo和@Zaz建议的那样简单。
Zaz*_*Zaz 14
在纯JavaScript中,只需response = readline()在打印提示后使用.
在Node.js中,您需要使用readline模块:const readline = require('readline')
| 归档时间: |
|
| 查看次数: |
120566 次 |
| 最近记录: |