SyntaxError
BaselineWidely available *
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
* Some parts of this feature may have varying levels of support.
SyntaxError
객체는 문법적으로 잘못된 코드를 해석하려고 시도할 때 발생하는 오류를 나타냅니다.JavaScript 엔진이 코드를 구문 분석할 때 언어의 구문에 맞지 않는 토큰이나 토큰 순서를 만나면 이 에러를 발생시킵니다.
SyntaxError
는직렬화 가능한 객체이므로structuredClone()
으로 복제하거나postMessage()
를 사용하여Worker 간에 복사할 수 있습니다.
SyntaxError
는Error
의 하위 클래스입니다.
생성자
SyntaxError()
새로운
SyntaxError
객체를 만듭니다.
인스턴스 속성
또한 부모Error
에서 인스턴스 속성을 상속합니다.
아래 속성은SyntaxError.prototype
에서 정의되었고, 모든SyntaxError
인스턴스애서 공유됩니다.
SyntaxError.prototype.constructor
인스턴스 객체를 생성하는 생성자 함수입니다.
SyntaxError
인스턴스의 경우 초기 값은SyntaxError
생성자입니다.SyntaxError.prototype.name
오류 유형의 이름을 나타냅니다.
SyntaxError.prototype.name
의 경우 초기 값은"SyntaxError"
입니다.
인스턴스 메서드
부모Error
에서 인스턴스 메서드를 상속합니다.
예제
SyntaxError
처리하기
try { eval("hoo bar");} catch (e) { console.log(e instanceof SyntaxError); // true console.log(e.message); console.log(e.name); // "SyntaxError" console.log(e.stack); // 오류 스택}
SyntaxError 생성하기
try { throw new SyntaxError("Hello");} catch (e) { console.log(e instanceof SyntaxError); // true console.log(e.message); // "Hello" console.log(e.name); // "SyntaxError" console.log(e.stack); // 오류 스택}
명세서
Specification |
---|
ECMAScript® 2026 Language Specification # sec-native-error-types-used-in-this-standard-syntaxerror |