JavaScript 엄격 모드: 안전하고 깔끔한 코드 작성 가이드
카테고리
프로그래밍/소프트웨어 개발
서브카테고리
웹 개발
대상자
- 중급 이상 JavaScript 개발자
- 코드 안정성/보안 강화에 관심 있는 개발자
- 대규모 팀 협업 시 실수 방지 전략 필요자
- ES6 이상 기술 습득자
핵심 요약
'use strict';
는 ECMAScript 5에서 도입된 필수적인 코드 안정성 강화 기법this
참조 오류와 미선언 변수를 예외로 처리하여 런타임 버그 감소- ES6 모듈 및 클래스 정의는 자동으로 엄격 모드 적용
- 글로벌 스코프 오염 및 불안전한 기능 사용을 명시적으로 차단
섹션별 세부 요약
1. 엄격 모드 활성화 방법
'use strict';
를 스크립트 또는 함수 최상단에 추가하여 적용- ES6 모듈(
import/export
) 및 클래스 정의는 자동으로 엄격 모드 적용 with
문 및 중복 파라미터 선언이 문법 오류로 처리
2. 엄격 모드의 주요 차이점
- 미선언 변수 →
ReferenceError
발생 - 함수 내
this
→undefined
참조 - 읽기 전용 속성 재할당 →
TypeError
발생 - 불안전한 기능(예:
eval
) 사용 차단
3. 실무 예제 및 활용
// 엄격 모드 활성화 예시
'use strict';
let tax = price * 0.18; // 전역 변수 생성 방지
- 대규모 팀 프로젝트에서 사전 오류 검출 가능
- legacy code는 구분된 스코프에서만 적용 권장
4. 자동 적용 범위
- ES6 모듈 및 클래스 정의는 자동 엄격 모드 적용
eval
및arguments
사용 등 불안전한 패턴 차단
결론
'use strict';
는 한 줄의 코드로 런타임 버그 감소와 코드 유지 보수성 향상 가능- ES6 이상 환경에서는 자동 적용되어 수동 선언 불필요
- 대규모 팀 협업 시 엄격 모드 강제 적용으로 코드 품질 향상
- legacy code는 구분된 스코프에서만 사용하여 호환성 유지