Node.js

차노·2023년 8월 21일
0

JS

목록 보기
78/96
  • readline 모듈을 사용하여 표준 입력으로부터 값을 읽어오고, 표준 출력을 값을 출력.

_ createInterface 메소드를 사용하여 'rl' 객체를 생성. 이 객체는 입력과 출력을 관리하며, 'line' 이벤트를 통해 입력을 받고 close 이벤트를 통해 입력이 종료될 때 동작을 정의

  • input 배열에 입력 값을 저장하고, 'line' 이벤트가 발생할 때마다 입력 값을 받아 배열로 저장.

  • close 이벤트가 발생하면 input 배열에서 첫 번째 원소를 숫자로 변환하여 출력.

개념

Node.js 환경에서 사용자 입력을 받아서 처리하는 코드. 사용자로부터 입력받은 데이터를 공백을 기준으로 분리하고, 그 분리된 데이터를 정수로 변환하여 출력하는 예제

코드가 작동하는 방식

-'process.stdin.setEncoding('utf8')': 입력 데이터의 인코딩을 UTF-8로 설정. 사용자의 입력이 문자열 형태로 처리될 것임을 나타낸다.

-'process.stdin.on('data',data => {...})': 사용자 입력 데이터를 읽어오는 이벤트 리스너를 등록. 입력한 데이터를 매개변수 'data'로 받아와서 처리.

-'const n = data.split(' ');': 입력 데이터를 공백을 기준으로 분리하여 문자열 배열 'n'에 저장한다.

-'const a = Number(n[0]), b = Number(n[1]);': 분리된 문자열 배열 'n'에서 첫 번째 원소를 정수 'a'로, 두 번째 원소를 정수 'b'로 변환하여 저장.

-'console.log(a); console.log(b);': 변환된 정수 a와 b를 출력.

def

Call Stack

함수의 실행 순서를 추적하는 자료구조

이벤트 루프

여러 이벤트들과 같은 비동기 작업들을 모아서 관리하고 어떤 순서대로 실행해야 하는지 도와주는 도구.

  • 호출 스택과 이벤트 큐를 관찰하면서, 호출 스택이 비어있고, 이벤트 큐에 작업이 있다면, 이벤트 큐의 작업을 호출 스택으로 이동하는 역할을 담당한다. 시간이 오래 걸리는 작업을 이벤트 큐에 넣어 비동기적으로 처리하고, 그 동안 호출 스택에서 다른 작업들을 계속해서 처리할 수 있다.

0개의 댓글