문
문이란 어떤 작업을 수행하는 문법구조와 명령어를 의미한다.
보통 문은 세미콜론으로 구분 짓는다.
와 같이 각 문을 구분지어 실행된다.
하지만 javascript에서는 줄바꿈을 하면 세미콜론을 작성하지 않아도 정상적으로 실행이 된다.
이를 '암시적' 세미콜론 이라고 하며, 이런 동작방식을 세미콜론 자동삽입 이라고 한다. ( 연산 등의 특정문은 제외 )
하지만 몇몇 예외 조건들이 있고 줄바꿈을 하더라도 기본적으로 세미콜론을 붙이는 것이 좋다.
-----------------------------------------------------------------------------------------------------------------------------------
엄격모드('use strict')
ES5에서 새로 추가 된 기능으로 "script의 예외 처리를 더욱 철저히 하겠다." 라는 의미로 ES4까지 묵인했던 에러들을
더욱 철저히 검사하겠다는 의미로
'use strict' 또는 "use strict" 를 document 최상단에 위치 시킴으로써 모던한 javascript가 되게 해준다.
(함수 위에 선언하면 해당 함수만 엄격모드로 실행시킬 수 있지만 보통 소스 최상단에 위치 시키는 것을 기본으로 한다.)
※ 개발자 콘솔에서는 'use strict'가 기본적으로 사용되지 않기 때문에 콘솔에 'use strict'를 직접 입력해주어야 한다.
위와 같이 콘솔에서 엄격모드를 사용가능 하며, 'use strict'를 작성한 뒤 Shift + Entet을 이용하여 줄바꿈을 한 뒤 명령어를 입력하면 된다.
test1은 변수를 선언하지 않았지만, 엄격모드가 아니기 때문에 그냥 실행되었다.
test2는 엄격모드에서 실행되었기 때문에 선언되지 않은 변수라는 에러가 떴다.
ES6 부터는 'use strict'가 기본값으로 되어 있어서 사용 할 필요가 없다.
'FrontEnd > JavaScript' 카테고리의 다른 글
[JS] map함수를 이용한 배열 안 특정 객체값 추출 (0) | 2021.07.29 |
---|---|
[JS] find함수를 이용하여 배열 안 객체의 특정 값을 체크해보자. (0) | 2021.07.24 |
JavaScript 메모3 (0) | 2021.04.12 |
JavaScript 메모 (0) | 2021.04.12 |
[JS] $(document).ready() 와 $(window).load()의 차이 ( feat. [Vue warn]: Cannot find element: ) (0) | 2021.03.30 |