1) fs모듈
// file system 모듈을 불러온다.
const fs = require('fs');
// fs모듈의 readFileSync 함수를 통해 동기적으로 해당 경로의 파일 전체를 읽어들인다.
// 백준에서는 '/dev/stdin' 경로에 테스트 케이스 파일이 있다.
// 읽어드린 정보는 toString()함수를 통해 문자열로 변환하여야 사용할 수 있다.
// 입력 받은 문자열을 split() 함수를 통해 배열화한다. (split(' '), split('\\n') 등)
// 예) 2 3 입력시, inputData = ['2', '3']
const inputData1 = fs.readFileSync('/dev/stdin').toString().split(' ');
// options으로 인코딩을 string 자료형으로 넘기는 경우, toString을 할 필요없이 문자열 반환
const inputData2 = fs.readFileSync(0, 'utf8').split(' ');
* 주의사항 : 계산시에는 parseInt 혹은 Number 함수를 통해 숫자로 형변환해야 에러가 발생하지 않는다.
> 차이점: Number는 숫자+문자가 혼합된 경우, NaN을 리턴하고, parseInt는 첫문자가 숫자라면, 숫자+문자의 경우도 숫자를 리턴한다.
const num1 = Number("100입니다"); // NaN을 리턴한다.
const num2 = Number("100"); // 숫자 100을 리턴한다, num2 === 100 은 true.
const num3 = new Number("100") // num3 === 100 은 false.
const num4 = parseInt("100입니다"); // 숫자 100을 리턴한다, "입니다"는 무시한다.
const num5 = parseInt("숫자100입니다"); // NaN을 리턴한다.
const num6 = parseInt("100"); // 숫자 100을 리턴한다.
const fs = require('fs');
const input = fs.readFileSync("/dev/stdin").toString().split(' ').map(Number);
const a = parseInt(input[0]);
const b = parseInt(input[1]);
console.log(a+b);
'알고리즘' 카테고리의 다른 글
[프로그래머스] 피보나치 수 (0) | 2022.12.16 |
---|---|
Node.js fs모듈과 readline ?? (0) | 2022.03.27 |
백준 10926 자바스크립트 (0) | 2022.03.24 |