자바스크립트) 엄격모드

hhhzeong·2023년 9월 5일
0
  • JS는 오랫동안 호환성 이유 없이 발전
  • 기존의 기능을 변경하지 않으면서 새로운 기능을 추가
    -> 기존에 작성한 코드는 절대 망가지지 않음
  • 불완전한 문법이 기존 사이트에 영원히 박제..

엄격모드

  • 새롭게 제정된 ECMA스크립트(ES5)에서 새로운 기능이 추가, 기존 기능 중 일부가 변경되어
    하휘 호환성 문제가 발생할 수도 있어서 변경사항 대부분은 ES5의 기본 모드에선 활성화 되지 않게 설계

  • 대신 use strict이라는 지시자를 사용해 엄격모드(strict mode)를 활성화 했을 때만 이 변경사항이 활성화 되게 함


엄격모드 사용

  • 스크립트 최상단(스크립트 전체에 적용)이나 함수 최상단(해당 함수만 엄격모드 실행)에 사용
    -> use strict는 반드시 최상단에만 위치 (최상단이 아니면 엄격 모드 활성화 안됨)
  • 브라우저 콘솔에서는 엄격모드가 기본적으로 적용되어 있지 않음
    -> use strict를 따로 콘솔에 작성해줘야 함

엄격모드 주의사항

  • use strict는 취소할 방법 X
  • js엔진을 이전 방식으로 돌릴 수 없음

엄격모드의 필요성?

  • 꼭 사용해야 하는지에 대한 의문...?

    모던 js는 클래스와 모듈에 대한 진일보한 구조를 제공 (class, import 등)
    이 둘을 사용하면 use strict는 자동으로 적용 그러므로 붙일 필요 없음

profile
어서오세요.

0개의 댓글