?uem/p1-90`이 부속서에서 정의하는 ECMAScript 언어 구문과 의미론은 ECMAScript
이 부속서에서 정의하는 일부 기능은 이 부속서에 명시되어 있고 일부는 이 문서의 본문에 명시되어 있습니다.
기능이 본문에 명시된 경우 문서에서 해당 기능의 영향을 받는 각 지점은 색상 상자 안의 “Normative Optional”이라는 문구로 표시됩니다. 또한 해당 기능이 알고리즘이나 early error 규칙의 특정 문구와 관련된 경우 관련 기능을 “호스트가 지원한다”는 조건으로 보호됩니다. 웹 브라우저는 그러한 모든 기능을 지원해야 합니다.
이 부속서는 웹 브라우저 ECMAScript
이러한 기능은 핵심 ECMAScript 언어의 일부로 간주되지 않습니다. 프로그래머는 새로운 ECMAScript 코드를 작성할 때 이러한 기능과 동작을 사용하거나 존재한다고 가정해서는 안 됩니다. 구현이 웹 브라우저의 일부이거나 웹 브라우저가 접하는 동일한
줄 종결자 코드 포인트를 포함하는
이 대체 패턴 문법과 의미론은 BMP 패턴의 구문과 의미론만 변
동일한 좌변이 [+UnicodeMode]와 [~UnicodeMode] 가드 모두와 함께 나타나는 경우 이는 모호성 해소 우선순위를 제어하기 위한 것입니다.
또한 다음 생성물에 대한 규칙은 강조된 텍스트를 추가하여 수정됩니다:
인수 regexpRecord와 direction을 사용하는
인수 regexpRecord를 사용하는
인수 regexpRecord와 direction을 사용하는
다음 규칙도 추가됩니다:
\ U+005C (REVERSE SOLIDUS)를 포함하는 인수 regexpRecord를 사용하는
두 규칙이 대체됩니다:
다음 규칙도 추가됩니다:
\ U+005C (REVERSE SOLIDUS)를 포함하는 \c에서만 도달할 수 있습니다.인수 patternText, u, v를 사용하는
ECMAScript
| 내재 이름 | 전역 이름 | ECMAScript 언어 연관 |
|---|---|---|
|
|
|
escape 함수( |
|
|
|
unescape 함수( |
이 함수는
숫자 값이 0x00FF 이하인 코드 단위를 대체할 때는 %xx 형식의 두 자리 이스케이프 시퀀스를 사용합니다. 숫자 값이 0x00FF보다 엄격하게 큰 코드 단위를 대체할 때는 %uxxxx 형식의 네 자리 이스케이프 시퀀스를 사용합니다.
이는 %escape% 내재 객체입니다.
호출되면 다음 단계를 수행합니다:
인코딩은 일부 RFC 1738에 설명된 인코딩을 기반으로 하지만, 이 표준에 지정된 전체 인코딩은 RFC 1738의 내용과 관계없이 위에서 설명합니다. 이 인코딩은 RFC 3986이 RFC 1738에 적용한 변경 사항을 반영하지 않습니다.
이 함수는 escape 함수가 도입할 수 있는 종류의 각 이스케이프 시퀀스를 그것이 나타내는 코드 단위로 대체한 새로운 버전의 String 값을 계산합니다.
이는 %unescape% 내재 객체입니다.
호출되면 다음 단계를 수행합니다:
이 메서드는
호출되면 다음 단계를 수행합니다:
이 메서드는 의도적으로 일반적이며
이 메서드는 호출되면 다음 단계를 수행합니다:
이 메서드는 호출되면 다음 단계를 수행합니다:
이 메서드는 호출되면 다음 단계를 수행합니다:
이 메서드는 호출되면 다음 단계를 수행합니다:
이 메서드는 호출되면 다음 단계를 수행합니다:
이 메서드는 호출되면 다음 단계를 수행합니다:
이 메서드는 호출되면 다음 단계를 수행합니다:
이 메서드는 호출되면 다음 단계를 수행합니다:
이 메서드는 호출되면 다음 단계를 수행합니다:
이 메서드는 호출되면 다음 단계를 수행합니다:
이 메서드는 호출되면 다음 단계를 수행합니다:
이 메서드는 호출되면 다음 단계를 수행합니다:
이 메서드는 호출되면 다음 단계를 수행합니다:
getFullYear 메서드는 “2000년 문제”를 피하므로 거의 모든 목적에서 권장됩니다.
이 메서드는 호출되면 다음 단계를 수행합니다:
setFullYear 메서드는 “2000년 문제”를 피하므로 거의 모든 목적에서 권장됩니다.
이 메서드는 호출되면 다음 단계를 수행합니다:
toUTCString 메서드가 권장됩니다. 이 메서드는 주로 이전 코드와의 호환성을 위해 제공됩니다.
이 메서드는 호출되면 다음 단계를 수행합니다:
이 메서드는 새로운 패턴과 플래그를 사용하여
ECMAScript 2015 이전에는
ECMAScript 2015 이전에는 ECMAScript 명세에서
함수가 선언되고 하나의 블록 안에서만 참조됩니다.
var 선언이 아닌 f의 다른 선언은 g의 함수가 하나의
var 선언이 아닌 f의 다른 선언은 g의 함수가 하나의 블록 안에서 선언되고 사용될 수 있지만 이후 블록에서도 참조됩니다.
var 선언이 아닌 f의 다른 선언은 g의 첫 번째 사용 사례는 ECMAScript 2015가 제공하는
두 번째와 세 번째 사용 사례의 ECMAScript 2015 상호 운용성에는
ECMAScript 구현체에 진단 경고 메시지를 보고하는 메커니즘이 있다면, 이러한 호환성 의미론이 적용되는
이 기능은 다음 지점에서 특별한 의미론을 포함합니다:
다음은
이 생성물은
이 기능에서 var 선언을 포함할 수 있습니다. 이는
런타임에서 그러한 바인딩은 VariableDeclarationEnvironment에 인스턴스화됩니다. 동일한 이름의 var 선언의 var 바인딩이 아니라 대응하는 catch 매개변수에 할당합니다.
이 수정된 동작은 var 및 function 선언에도 적용됩니다. 이 변경은
다음은
이 생성물은
인수 labelSet을 사용하는
인수 labelSet을 사용하는
인수 iterationSet과 labelSet을 사용하는
인수 labelSet을 사용하는
[[IsHTMLDDA]] 내부 슬롯은 typeof 연산자
[[IsHTMLDDA]] 내부 슬롯을 갖는 객체는 이 명세에서 절대 생성하지 않습니다. 그러나 웹 브라우저의 document.all 객체는 웹 호환성을 위해 존재하는 이 슬롯을 갖는 document.all을 제외하고 어떤 객체도 이러한 슬롯과 함께 생성해서는 안 됩니다.
이 기능은 다음 지점에서 특별한 의미론을 포함합니다:
typeof의 평가 의미론에서 함수 호출(
할당 대상이 = 또는 ??=, &&=, ||=)에는 적용되지 않습니다.