티스토리 뷰
목차
1. Strict Mode란?
2. Strict Mode 장점
3. 사용방법
4. Strict Mode 에서 허용되지 않는 문법
1. Strict Mode 란?
strict 모드는 ECMAScript 5부터 적용되는 키워드로 올바르지 않은 문법을 사전에 검출해 줍니다. 또한 안전한 코딩을 위한 하나의 가이드 라인입니다.
2. Strict Mode 장점
- 흔히 발생하는 코딩 실수를 잡아내서 예외를 발생 시킵니다.
- 상대적으로 안전하지 않은 액션이 발생하는 것을 방지합니다.
- 정확하게 고려되지 않은 기능들을 비활성화 시킵니다.
3. 사용방법
Strict Mode로 설정하는 방법은 간단합니다. 코드 앞쪽에 "use strict"을 추가하면 됩니다.
4. Strict Mode 에서 허용되지 않는 문법
1. 정의되지 않은 변수의 사용
"use strict";
x = 3.14; // This will cause an error (x is not defined)
"use strict";
x = {p1:10, p2:20}; // This will cause an error (x is not defined)
2. 변수나 객체의 삭제
"use strict";
var x = 3.14;
delete x; // This will cause an error
3. 함수 파라미터에 중복된 이름
"use strict";
function x(p1, p1) {}; // This will cause an error
4. 8진수
"use strict";
var x = 010; // This will cause an error
5. 이스케이프 문자
"use strict";
var x = \010; // This will cause an error
6. 읽기전용 프로퍼티에 값 설정
"use strict";
var obj = {};
Object.defineProperty(obj, "x", {value:0, writable:false});
obj.x = 3.14; // This will cause an error
7. 조회 전용 프로퍼티에 값 설정
"use strict";
var obj = {get x() {return 0} };
obj.x = 3.14; // This will cause an error
8. eval
, arguments
문자열에 대한 변수로의 사용
"use strict";
var eval = 3.14; // This will cause an error
var arguments = 3.14; // This will cause an error
9. with
사용
"use strict";
with (Math){x = cos(2)}; // This will cause an error
10. eval()
에 정의된 변수 사용
"use strict";
eval ("var x = 2");
alert (x); // This will cause an error
'Language > JavaScript' 카테고리의 다른 글
[JavaScript] for...in문, for...of문, forEach문 (0) | 2022.06.24 |
---|---|
[Javascript] querySelectorAll (0) | 2022.06.23 |
[JavaScript] classList (add, remove, contains, toggle) (0) | 2022.06.22 |
[JavaScript] target과 currentTarget의 차이점 (0) | 2022.06.22 |
[Javascript] prompt(), confirm(), alert() 사용 방법 (0) | 2022.06.22 |
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 비동기
- currentTarget
- CSS
- 중급 프로젝트
- 제어 컴포넌트
- 스프린트프론트엔드6기
- 배열
- js
- 코드잇 스프린트
- map
- javascript
- hydrationboundary
- Target
- 코드잇스프린트
- rest parameter
- 리액트
- tanstackquery
- 객체
- innerhtml
- 프론트엔드
- Next.js
- 취업까지달린다
- react
- html
- 동기
- GitHub
- 유사배열객체
- 비제어 컴포넌트
- Git
- arguments
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
글 보관함