[JavaScript] Node.js에서 readline 입력받기

Dico·2021년 1월 13일
2

[JavaScript]

목록 보기
15/21

백준 사이트에서 알고리즘 문제를 풀 때에도 쓰이는 readline 입력받기!
제대로 알아보지는 못하고 긁어다 쓰기 바빴었지만, 이번 미션을 수행하면서 제대로 알아본 후 사용해야겠다는 생각이 들었다.


Syntax:

readline.createInterface()

백준 사이트에서 알고리즘 문제를 풀 때에도 요긴하게 쓰이는 readline.createInterface()메소드!
제대로 알아보지는 못하고 긁어다 쓰기 바빴었지만 이번 미션을 수행하면서 조금 더 알아보기로 했다.

readline.createInterface()메소드는 readline.Interface 인스턴스를 생성한다.
생성된 readline.Interface 인스턴스에서 가장 많이 쓰이는 이벤트는 line이벤트다.


+PLUS: process.stdin & process.stdout

process.stdin: stdin은 standard input의 abbreviation; stdin에 대한 Readable Stream이다.
process.stdout: stdout은 standard output의 abbreviation; stdout에 대한 Writable Stream이다.
*여기서 stream이란 컴퓨터 프로그램과 그 환경(일반적으로 단말기) 사이에 미리 연결된 입출력 통로를 가리킨다.


rl.on()

readline.Interface 인스턴스(rl)에서 .on()메소드로 Interface가 내장한 이벤트들을 실행한다.
생성된 readline.Interface 인스턴스에서 가장 많이 쓰이는 이벤트는 line이벤트다.


rl.close()

rl.close()메소드는 readline.interface인스턴스와 입력 및 출력 스트림 제어를 종료한다.
rl.close()메소드가 호출되면 readline.interface인스턴스에서 'close 이벤트'가 발생된다. (그래도 다른 이벤트(e.g. line 이벤트)가 발생하는 것을 즉각적으로 중지시키지는 않는다.)


'line' 이벤트

line이벤트는 입력 스트림이 줄 끝 입력 (\ n, \ r 또는 \ r \ n)을 수신 할 때마다 발생되는데, 줄 끝 입력은 보통 사용자가 Enter 또는 Return을 누를 때 발생한다. 콜백 함수는 한 줄의 수신 된 입력내용을 문자열타입의 파라미터로 받으며 호출된다.


공식문서 보러가기
fs모듈로 입력받아오는 방법도 알아보기
readline으로 여러 줄 입력받아오는 방법 알아보기



Reference 📚

*본 포스팅은 아래 사이트들을 해석 및 인용하여 작성되었습니다.
학습단계로 잘못된 정보가 있을 수 있습니다. 잘못된 부분에 대해 알려주시면 곧바로 정정하도록 하겠습니다 😊
https://velog.io/@exploit017/%EB%B0%B1%EC%A4%80Node.js-Node.js-%EC%9E%85%EB%A0%A5-%EB%B0%9B%EA%B8%B0
https://wooooooak.github.io/node.js/2018/09/26/Node.js-%EC%9E%85%EB%A0%A5-%EB%B0%9B%EA%B8%B0/
https://nodejs.org/api/readline.html#readline_readline_createinterface_options
https://nodejs.sideeffect.kr/docs/v0.10.25/api/process.html#process_process_stdin
https://nodejs.sideeffect.kr/docs/v0.10.25/api/process.html#process_process_stdout

profile
프린이의 코묻은 코드가 쌓이는 공간

0개의 댓글