Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Is there a way to read standard input with JavaScript?

I saw this for lots of other languages but not JavaScript.

I'm trying to do problems like: this (codechef.com) and of course the programs need to be able to read standard in like C++ and other languages do.

EDIT: Thanks for the answers. The primary reason I want this functionality is so I can answer the questions on CodeChef; Codechef sends multiple inputs to the files/programs that are the answers (and of course the programs have to respond in the required way for the answer to be correct).

like image 574
JohnAllen Avatar asked Mar 22 '11 18:03

JohnAllen


People also ask

How do you take standard input in JavaScript?

var a = readline(); the value which you give input will be stored in variable a. readline() : Reads a single line of input from stdin, returning it to the caller. You can use this to create interactive shell programs in JavaScript.

How do you read input and standard input?

One popular way to read input from stdin is by using the Scanner class and specifying the Input Stream as System.in. For example: Scanner scanner = new Scanner(System.in); String userString = scanner. next(); int userInt = scanner.

Can we take input in JavaScript?

In JavaScript, we use the prompt() function to ask the user for input. As a parameter, we input the text we want to display to the user.

What is stdin and stdout JavaScript?

stdin (0): The standard input stream, which is a source of input for the program. process. stdout (1): The standard output stream, which is a source of output from the program.


1 Answers

If you use node to act as an interpreter in the terminal, you can use this:

---- name.js ---- var readline = require('readline');  var rl = readline.createInterface({   input: process.stdin,   output: process.stdout  });  rl.question(">>What's your name?  ", function(answer) {    console.log("Hello " + answer);    rl.close(); });  ----- terminal ---- node name.js 
like image 171
Kenn Costales Avatar answered Sep 19 '22 11:09

Kenn Costales