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;78function add(x) {9var a = 210// use strict에서는 var 생략 불가11var b = a + x12console.log(this) // undefined13}14add(1)1516const array = [1, 2, 3]17// use strict에서는 const num에서 const 생략 불가18for (const num of array) {19console.log(num)20}