Posts 모던 자바스크립트 #2.3. 엄격 모드
Post
Cancel

모던 자바스크립트 #2.3. 엄격 모드

모던 JavaScript 튜토리얼을 따라가면서 정리합니다.

2.3. 엄격 모드

ECMAScript5(ES5)가 등장하기 전인 2009년까지는 기존 기능 변경 없이 새로운 기능이 추가되었다. 새롭게 정의된 ES5에서는 새로운 기능이 추가되고 기존 기능 중 일부가 변경되었다. 기존 기능을 변경하였기 때문에 하위 호환성 문제가 생길 수 있으므로 변경사항이 ES5 기본 모드에서는 활성화되지 않도록 설계되었다. 대신 use strict라는 특별한 지시자를 사용해 엄격모드를 활성화했을 때만 이 변경사항이 활성화되게 해 놓았다.

use strict

지시자가 스크립트 최상단에 오면 스크립트 전체가 “모던한” 방식으로 동작한다. 한편 함수 본문 맨 앞에 위치할 수도 있는데, 이렇게 하면 오직 해당 함수만 엄격 모드로 실행된다.

1
2
3
alert("some code");
// 하단에 위치한 "use strict"는 스크립트 상단에 위치하지 않으므로 무시된다.
"use strict";

브라우저 콘솔

브라우저 콘솔은 기본적으로 use strict가 적용되어 있지 않는다. 따라서 'use strict' 입력 후 Shift+Enter를 눌러 줄바꿈해 원하는 스크립트를 입력한다. 브라우저가 오래되어 입력이 불가능하다면 다음과 같이 코드를 래퍼로 감싼다.

1
2
3
4
(function() {
  'use strict';
  // 테스틀하려는 코드
})()

use strict 필요성

코드를 클래스와 모듈을 사용해 구성한다면 "use strict"를 생략해도 된다. **클래스와 모듈을 사용하면 **use strict가 자동으로 적용되기 때문이다.

This post is licensed under CC BY 4.0 by the author.

모던 자바스크립트 #2.2. 코드 구조

모던 자바스크립트 #2.4. 변수와 상수

Loading comments from Disqus ...