strict mode라 불리는 엄격 모드는 기존 자바스크립트 언어의 일부 기능을 제한하고 엄격하게 문법 검사를 하기 때문에 기존에는 넘어갔던 에러들을 확인할 수 있습니다.
strict 모드 설정
strict 모드 설정은 스크립트와 함수에서 선언을 할 수 있습니다.
1) 스크립트에서 선언
"use strict";
// code ...
2) 함수에서 선언
function foo () {
"use strict";
// code ...
}
strict 모드 특징
대상 | 제한 사항 |
변수 | 선언되지 않은 변수나 객체를 사용할 수 없음. |
eval() 함수 내에서 선언된 변수는 외부에서 사용할 수 없음. | |
프로퍼티 | 읽기 전용 프로퍼티에는 대입할 수 없음. |
한 프로퍼티를 여러 번 정의할 수 없음. | |
함수 | 함수를 구문이나 블록 내에서 선언할 수 없음. |
매개변수 | 매개변수의 이름이 중복되어서는 안됨. |
arguments 객체의 요소 값을 변경할 수 없음. | |
문자열 | 문자열 "eval"과 "arguments"는 사용할 수 없음. |
8진수 | 숫자 리터럴에 8진수 값을 대입할 수 없음. |
this | this 포인터가 가르키는 값이 null이나 undefined인 경우 전역 객체로 변환되지 않음. |
delete | delete 키워드를 사용할 수 없음. |
with | with 문을 사용할 수 없음. |
예약어 | 다음 예약어들은 사용할 수 없음. (implements, interface, let, package, private, protected, public, static, yield) |
'프로그래밍📚 > javascript' 카테고리의 다른 글
에러 객체와 try catch (0) | 2024.01.15 |
---|---|
비동기 처리방법 async/await (0) | 2024.01.11 |
비동기 처리 방법 Promise (0) | 2024.01.11 |
{} 빈 객체 확인하는 방법 (0) | 2023.12.14 |
Array.find (0) | 2023.12.13 |