Javascript的特性在于它是非阻塞IO的(具体的这个词什么意思可以看相关资料这里暂不赘述) 因此它不能像C语言那样scanf然后printf
但这里讲一下这个设计的原因。因为Javascript的设计初衷就在是为了设计一款专门在浏览器中运行的语言。因此它基本上不会有要用户输入才给予回复的情况,它就是一条线一直走到底不中断的。数据的通常是通过常量常量直接定义或者是调用api来获取的。
但如果你一定想要有类似阻塞式IO那样直接阻塞式读取控制台输入的内置函数的体验 这里推荐一个Node自带的方法
const readline = require("readline");
const rl = readline.createInterface({ input: process.stdin, output: process.stdout,});
rl.question("请输入一个数字: ", (answer) => { const num = Number(answer); console.log(`你输入的数字是: ${num}`); rl.close();});当然如果你学习了npm也可以用第三方库prompt-sync:来实现
const prompt = require("prompt-sync")();
const name = prompt("请输入你的名字: ");const age = Number(prompt("请输入你的年龄: "));
console.log(`你好, ${name}, 你今年 ${age} 岁`);但显然那个阶段的前端学习者我推荐直接开始用网页的api(比如读取一个输入框的文字)来实现测试一个函数不同的输入了
至于输出javascript的输出则非常简单,就是通过使用console.log函数。以下是一个example
console.log("Hello World"); //输出"Hello World"let x = 1;console.log(x); //输出"1"