시작하는 중
백준에서 node.js(JavaScript)로 입력받기 본문
const fs = require('fs')
// 문제를 풀 때는 이거로
let input = fs.readFileSync('./input.txt').toString().trim().split('\n')
// 제출시에는 이거로
let input = fs.readFileSync('./dev/stdin').toString().trim().split('\n')
1. 우선 file system 이라는 모듈을 import 해와서 fs에 할당한다.
2. 그런 다음 input.txt라는 파일 형태로 저장해놓고 file system으로 input.txt 파일을 읽는 것
2-1. 이렇게 읽으면 개행문자(\n와 \r)까지 전부 읽는다.
3. toString()을 통해 문자열로 변환하고
4. trim() 문자열 끝의 공백을 제거하고
5. split('\n\)을 통해 엔터가 입력되는 기준에 따라 배열로 변환한다.
문제는 또 있다.. 문제의 input이
1 2
123
123
이렇게 주어지면 input에는 ['1 2','123','123'] 이렇게 저장되는데
첫번째 줄을 또 구분하려면
const [N, M] = input[0].split(' ')
을 통해 N과 M으로 매핑해줘야 하고
2번째줄부터 M번동안 입력받아서 배열에 저장해야한다면
const arr = input.slice(1)
slice를 통해 배열을 가져와야 한다.
'자바스크립트 > 정리' 카테고리의 다른 글
JavaScript async, await (0) | 2022.11.14 |
---|---|
JavaScript Date에 대해 (0) | 2022.11.10 |
Intersection observer API를 통한 무한 스크롤 (0) | 2022.11.03 |
Javascript prototype과 constructor과 __proto__ (0) | 2022.10.28 |
querySelectorAll 활용하여 반복 줄이기 (0) | 2022.10.25 |