고양이와 코딩

[JavaScript] 나를 당황하게 한 직각삼각형 출력하기 본문

javascript

[JavaScript] 나를 당황하게 한 직각삼각형 출력하기

ovovvvvv 2023. 2. 3. 00:06
728x90

하루에 아무리 하기싫고 바빠도 한문제만큼은!!! 꼭 풀겠다는 의지로 시작한

자바스크립트 프로그래머스 코테 !!!! 아자아자

원래 세줄짜리 코드도 멍~ 때렸는데 이제야 이정도는 가뿐히 풀지!! 싶은 시점에서..

(참고로 정답률 높은 순으로 정렬해놓음 ㅋ)

이 문제를 만났고... 

겁나 당황했다................................

 

그래서 readline이 뭔데?

readline은 console로 입력받는 자바스크립트의 내장 모듈!!

기본형식은

const readline = require("readline");

=>모듈을 불러오고 readline(변수)에 저장하는 것이라구 하네요

 

구글의 수많은 고수님들께 항상 감사하구 있습니다.

솔직히.. 아직 잘 이해는 안되지만 대략

"readline을 사용하면 콘솔을 통해 입력받을 수 있군"

정도에서 마무리 하도록 하고 ㅎㅎ

 

rl.on(~~~) 이건 또 뭐지?

 

const readline = require("readline");

이 부분은 모듈을 불러오는 부분

 

const rl = readline.createInterface({

input: process.stdin,

output : process.stdout,

});

이 부분은 readline interface 객체를 만드는 부분

-readline interface 객체를 이용해 콘솔에서 입출력을 처리할 수 있어요

-createInterface() 메소드를 이용해서 객체를 만들고

rl(변수)에 저장합니다.

 

on은 메소드로 

on을 이용하면 이벤트 발생 시에 실행할 동작을 지정할 수 있어요!!

line과 close

line은 이벤트로 사용자가 콘솔에 입력을 할때!! 발생합니다

사용자가 입력 이벤트를 발생시키면, 변수를 통해 사용자가 입력한 내용이 저장되고

이를 콘솔에 출력하는 것입니다

 

close는 readable 스트림 종료를 제어하는 이벤트로 

더이상 입력받을 것이 없다면 rl.close()를 호출하여 발생합니다

따라서 !!

rl.on("line", function(x) {

console.log(x);

rl.close(); //입력 종료

}).on("close", fucntion(){

//입력 종료 후 동작할 코드

})

line 이벤트와 함께 이런 형태로 사용됩니다 ㅎㅎ