[JavaScript] 입출력 - readline

💡readline 모듈

콘솔을 통해 값을 입력받기 위해 readline 모듈을 사용한다.
자바스크립트에 내장된 모듈로 Readable Stream에서 한 줄씩 입출력을 처리할 수 있도록 도와준다.

모듈 가져오기

const readline = require("readline");

인터페이스 객체 만들기

const rl = readline.createInterface({
  input: process.stdin,
  output: process.stdout,
});

rl.on() 입력된 값 처리, 종료

line : 한 줄씩 입력받은 후 실행, 입력된 값은 line에 저장
close : 인터페이스 종료, 더이상 입력되는 값이 없을 때 실행

💡 한 줄 입력받기

rl.on("line", (line) => {
    console.log(line);
    rl.close(); // close가 없으면 입력을 무한히 받는다.
});
 
rl.on('close', () => {
        process.exit();
})

💡 공백을 기준으로 값 입력받기

split(' ')을 이용하여 입력된 공백을 기준으로 입력된 문자열을 분할하여 저장한다.

rl.on("line", (line) => {
    // 입력된것을 parseInt함수를 이용하여 숫자로 변환 가능
    input = line.split(' ').map((el) => parseInt(el)); 
    rl.close();
})

rl.on('close', () => {
    input.forEach(el => {
        console.log(el);
    })
    process.exit();
})

코드 정리

// 모듈 가져오기
const readline = require("readline");
// 인터페이스 객체 만들기
const rl = readline.createInterface({
  input: process.stdin,
  output: process.stdout,
});
// 입력값 출력
rl.on("line", (line) => {
  console.log(line);
  rl.close(); // 없을 시 무한히 입력 받음
});
// 종료
rl.on("close", () => {
  process.exit();
});

📖참고

좋은 웹페이지 즐겨찾기