🎉 berenickt 블로그에 온 걸 환영합니다. 🎉
Lang
JavaScript
12-Strict Mode(엄격 모드)

1. Strict Mode(엄격 모드)

가끔 엄격하지 않은 기본값을 “느슨한 모드(sloppy mode)“라고 부르기도 합니다. 공식 용어는 아니지만 혹시 모르니 알아두세요. 엄격 모드는 오래전 JavaScript의 안좋은 방법들을 확인할 떄 유용합니다.

  • 기존에는 조용히 무시되던 에러들을 throwing합니다.
  • JavaScript 엔진의 최적화 작업을 어렵게 만드는 실수들을 바로잡습니다.
    • 가끔씩 엄격 모드의 코드는 비-엄격 모드의 동일한 코드보다 더 빨리 작동하도록 만들어집니다.
  • 엄격 모드는 ECMAScript의 차기 버전들에서 정의 될 문법을 금지합니다.
  • cf. MDN 엄격모드
1
// 엄격 모드(strict mode)
2
// 리액트와 같은 프레임워크 사용시 기본적으로 엄격 모드임
3
// 전역으로 사용해도 되고, 함수 안에서만 적용하고 싶으면 함수 안에 작성
4
'use strict' // 이 파일을 엄격모드에서 진행하겠다는 뜻
5
// var x = 1;
6
// delete x;
7
8
function add(x) {
9
var a = 2
10
// use strict에서는 var 생략 불가
11
var b = a + x
12
console.log(this) // undefined
13
}
14
add(1)
15
16
const array = [1, 2, 3]
17
// use strict에서는 const num에서 const 생략 불가
18
for (const num of array) {
19
console.log(num)
20
}