[자바스크립트/JavaScript] JS로 코테 준비하기!

Seri·2023년 7월 17일
1

코딩테스트

목록 보기
8/9

입력 받기

const fs = require("fs");
// const inputData = fs.readFileSync('/dev/stdin'); - 백준 제출용
const inputData = fs.readFileSync("example.txt");

번거롭지만 example.txt와 같은 input 파일을 만들어서 테스트를 한다. 그리고 제출할 때는 주석처리된 부분으로 대체해서 제출하면 된다.

아무래도 가장 익숙하지 않았던 것은 type에 상관없이 연산이 된다는 것이다. 가장 최근에는 주로 TypeScript를 사용했기 때문에 타입을 맞추는 것에 익숙해졌는데 JavaScript는 연산 시 원하지 않는 결과가 나오는 경우가 종종 있다. 숫자끼리도 더해지고, 문자끼리도 더해진다.

숫자로 입력 받기

const inputData = fs
  .readFileSync("example.txt")
  .toString()
  .trim()
  .split(" ")
  .map(Number);

공백이 있는 한 줄의 문자열을 입력 받아 공백을 기준으로 나눠서 숫자로 변환한다.

여러 줄 입력 받기

// 123
// 456
const fs = require("fs");
const inputData = fs.readFileSync("example.txt").toString().trim().split("\n");

console.log(inputData); // ['123', '456']
  • trim(): 문자열 좌우 공백을 제거

출력 받기

console.log(answer);

익숙한 콘솔로그

인덱스

let array = [1, 2, 3, 4, 5];
let lastElement = array[array.length - 1]; // 5

JavaScript는 -1로 마지막 인덱스를 찾을 수 없다.(음수 인덱스를 지원하지 않는다.) 그래서 위처럼 마지막 인덱스를 찾아야 한다.

profile
🎤 📷 ❄️ 🌊

0개의 댓글