Language/JavaScript

JavaScript 코딩테스트 대비 정리 (레벨 1)

Kun Woo Kim 2025. 8. 4. 17:19
728x90

코딩테스트를 준비할 때 반드시 알고 있어야 할 JavaScript 기초 문법과 함수들을 정리한 문서입니다.
이 문서는 레벨 1 (입문) 수준으로 구성되어 있으며, 변수 선언, 조건문, 반복문, 배열/문자열 처리, 내장 함수 사용 등을 포함합니다.


✅ 변수 선언: var, let, const

  • var: 함수 스코프, 중복 선언 가능, 호이스팅 발생 (초기화 없이 사용 가능). 사용 비추천.
  • let: 블록 스코프, 호이스팅은 되지만 TDZ(일시적 사각지대)로 초기화 전 사용 불가.
  • const: 블록 스코프, 재할당 불가. 기본적으로 상수 선언에 사용.

일반적으로 const → 재할당 없는 값, let → 재할당 가능한 값, var는 사용 지양.


✅ 조건문 (if / 삼항 연산자)

if (조건) {
  // 실행 코드
} else if (조건2) {
  // 실행 코드
} else {
  // 실행 코드
}
  • 조건식은 Boolean으로 평가됨
  • falsy 값: 0, "", null, undefined, NaN
  • 삼항 연산자: 조건 ? 값1 : 값2

✅ 반복문 (for, while, for...of)

for (let i = 0; i < arr.length; i++) { ... }
while (조건) { ... }
do { ... } while (조건);
  • for...of: 배열 순회에 유용
  • for...in: 객체의 열거 가능한 속성 순회 (배열에 비추천)

✅ 배열 순회 방법

  • 전통적인 for 루프
  • for...of
  • forEach
arr.forEach((item, index) => {
  console.log(item, index);
});

✅ 문자열 처리

  • 인덱스로 접근 가능: str[0]
  • 길이 확인: str.length
  • 문자열은 불변(immutable)
  • 문자열 연결: +, 템플릿 리터럴(`${}`)

주요 메서드:

  • substring(start, end)
  • slice(start, end)
  • includes(value)
  • split(separator)
  • join(separator)

✅ 주요 내장 함수 요약

  • split(','): 문자열 → 배열
  • join('-'): 배열 → 문자열
  • sort(compareFn): 정렬 (문자열 기반 / 숫자는 compareFn 필요)
  • push, pop: 배열 끝 추가/제거 (스택)
  • unshift, shift: 배열 앞 추가/제거 (큐)
  • slice(start, end): 배열 일부 복사
  • substring(start, end): 문자열 일부 추출
  • includes(value): 포함 여부 확인

✅ 숫자 변환 및 Math 함수

  • parseInt(str, 10): 정수 변환 (문자열 일부만 읽음)
  • Number(str): 전체 문자열을 숫자로 해석 (실패 시 NaN)
  • Math.min(...arr), Math.max(...arr)
  • 기타: Math.abs, Math.pow, Math.floor, Math.ceil

⚠️ 주의 사항

  1. 문자열은 불변 → 조작 시 새로운 문자열 생성 필요
  2. 숫자 정렬 시 arr.sort((a, b) => a - b) 형태로 사용
  3. parseInt는 항상 진법(10)을 명시할 것
728x90