2016-05-25 3 views
2

Я читаю ECMAScript 5.1 Specification, но я застрял со следующим предложением:ECMAScript типа 5,1 и 6 Спецификации значение

значение типа Спецификации являются спецификации артефактов, которые не обязательно соответствуют какой-либо конкретной организации в пределах ECMAScript реализация.

Если они не обязательно соответствуют какой-либо конкретной сущности, что они соответствуют? Я имею в виду, что значение типа спецификации относится к набору значений типа спецификации (очевидно), так что же говорит это предложение?

+0

связанный: [Какая внутренняя собственность в ECMAScript определена для?] (Http://stackoverflow.com/q/11003021/1048572) – Bergi

ответ

3

Спецификация ECMAScript описывает, как язык должен вести себя с точки зрения скрипта, выполняющегося в среде, соответствующей условиям. В нем не описывается, как эта среда должна быть реализована, как работает скрипт внутри нее, учитывая набор входов.

Первая часть этого предложения имеет важное значение для контекста здесь:

типа спецификации соответствует метаценностям, которые используются в алгоритмах для описания семантики языковых конструкций ECMAScript и типов языка ECMAScript. Типы спецификаций - это ссылка, список, завершение, дескриптор свойств, идентификатор свойства, лексическая среда и запись среды.

Так что «спецификация тип» в цитате вы писали: значения типа

Спецификации являются спецификации артефактов, которые не обязательно соответствуют какой-либо конкретной организации в рамках реализации ECMAScript.

является одним из таких типов, как «Ссылка» или «Идентификатор объекта».

Дело в том, что ваша реализация свободна в реализации этих концепций, но это радует. Нет требования, чтобы ваша реализация имела некоторый объект, который представляет тип «Reference», или какой-либо объект, который представляет «Completion» или любой другой. Пока, с точки зрения сценария, работающего на вашей реализации, все выглядит правильно, вы можете свободно использовать язык, как вам угодно.

Смежные вопросы