JavaScript(node.js) fs module을 사용한 입출력 in 백준

dev·2022년 8월 17일
post-thumbnail

개요

자바스크립트 fs 모듈을 사용해서 입출력을 받는다.

우리가 백준에서 node.js로 문제를 풀때 입력을 할때에는 아래와 같은 코드를 적어 줘야 한다.

const fs = require("fs");
const input = fs.readFileSync("dev/stdin").toString().split(' ')

fs module(File System module) 이란 무엇일까?

fs 모듈은 파일 시스템에 접근하는 모듈이다
즉, 파일을 create하고 write하거나 read할수 있다.


fs module을 사용해서 백준 1000번째 문제 A+B를 풀어보자.

const input = fs.readFileSync("/dev/stdin").toString().split(' ')

위 줄을 해석 하면
fs 모듈에서 readFileSync 함수로 /dev/stdin (= standard input)을 참조해서 불러오는 거다. 불러온 입력 값을 toString()으로 type을 string으로 변환해주고, split(' ')으로 띄어쓰기로 구분해서 input이라는 배열에 저장하는 것이다.

split()함수는 문자열을 일정한 구분자로 잘라서 배열로 저장을 한다.


const A = parseInt(input[0]);
const B = parseInt(input[1]);

console.log(A + B);

A와 B를 input 배열의 아이템 0번과 1번으로 각각 저장한다.

연산을 number로 해야하기 때문에 parseInt를 사용한다.
만약 float이라면 parseFloat으로 하면 된다.

💡 참고 사항

readFilerealFileSync
비동기식 처리동기식 처리
데이터를 가져올때 프로그램이 진행을 멈추지 않고 그 다음으로 진행함.데이터를 가져올때 프로그램이 진행을 멈추고, 꼭 순서대로 실행
profile
오늘의 발견

0개의 댓글