
문제를 세분화하여 분석할 것
제약 조건을 명확히 파악하고, 이에 따른 테스트 케이스를 작성할 것
입력값의 특성을 분석할 것
핵심 키워드를 통해 해결 방향을 도출할 것
데이터의 흐름을 고려한 자료구조 선택
세부 구현보다 동작 중심으로 작성할 것
문제 해결 순서대로 단계적으로 작성할 것
충분한 테스트를 통해 설계의 타당성을 검토할 것
O(1), O(n), O(n²), O(log n) 등구조 분해 할당
[a, b] = [b, a];
비구조화 할당
function printName({ name }) {
console.log(name);
}
스프레드 연산자
const merged = { ...obj1, ...obj2 };
중복 제거 (Set)
[...new Set(arr)];
조건문 간결화
isValid && doSomething();
isError || continueProcess();