История версий ECMAScript
ECMAScript — это стандарт JavaScript, разработанный Ecma International . С 2015 года основные версии публикуются каждый июнь.
ECMAScript 2023, 14-я и текущая версия, была выпущена в июне 2023 года.
Версии
[ редактировать ]Версия | Дата публикации | Имя | Изменения по сравнению с предыдущей редакцией | Редактор |
---|---|---|---|---|
1 | июнь 1997 г. | Первое издание основано на JavaScript 1.1, реализованном в Netscape Navigator 3.0. [1] | Гай Л. Стил мл. | |
2 | июнь 1998 г. | Редакционные изменения для обеспечения полного соответствия спецификации ISO/IEC 16262:1998. | Майк Коулишоу | |
3 | декабрь 1999 г. | На основе JavaScript 1.2, реализованного в Netscape Navigator 4.0. [2] Добавлены регулярные выражения , улучшена обработка строк, новые операторы управления, обработка исключений try/catch, более точное определение ошибок, форматирование числового вывода и другие улучшения. | Майк Коулишоу | |
4 | Заброшен (последний проект от 30 июня 2003 г.) | ECMAScript 4 (ES4) | От четвертого издания отказались из-за политических разногласий по поводу сложности языка. Многие функции, предложенные для четвертого издания, были полностью исключены; некоторые из них были включены в шестое издание. | |
5 | декабрь 2009 г. | Добавляет «строгий режим», подмножество, предназначенное для обеспечения более тщательной проверки ошибок и предотвращения конструкций, подверженных ошибкам. Разъясняет многие неясности в спецификации 3-го издания и учитывает поведение реальных реализаций, которые постоянно отличались от этой спецификации. Добавляет некоторые новые функции, такие как геттеры и сеттеры , поддержка библиотеки для JSON и более полное отражение свойств объекта. [3] | Пратап Лакшман, Аллен Вирфс-Брок | |
5.1 | июнь 2011 г. | Изменения для обеспечения полного соответствия спецификации ISO/IEC 16262:2011. | Пратап Лакшман, Аллен Вирфс-Брок | |
6 | июнь 2015 г. [4] | ECMAScript 2015 (ES2015) | См. №6-е издание – ECMAScript 2015. | Аллен Вирфс-Брок |
7 | июнь 2016 г. [5] | ECMAScript 2016 (ES2016) | См. №7-е издание – ECMAScript 2016. | Брайан Терлсон |
8 | июнь 2017 г. [6] | ECMAScript 2017 (ES2017) | См. №8-е издание – ECMAScript 2017. | Брайан Терлсон |
9 | июнь 2018 г. [7] | ECMAScript 2018 (ES2018) | См. №9-е издание – ECMAScript 2018. | Брайан Терлсон |
10 | июнь 2019 г. [8] | ECMAScript 2019 (ES2019) | См. № 10-е издание – ECMAScript 2019. | Брайан Терлсон, Брэдли Фариас, Джордан Харбанд |
11 | июнь 2020 г. [9] | ECMAScript 2020 (ES2020) | См. № 11-е издание – ECMAScript 2020. | Джордан Харбанд, Кевин Смит |
12 | июнь 2021 г. [10] | ECMAScript 2021 (ES2021) | См. № 12-е издание – ECMAScript 2021. | Джордан Харбанд, Шу-ю Го, Майкл Фикарра, Кевин Гиббонс |
13 | июнь 2022 г. [11] | ECMAScript 2022 (ES2022) | См. № 13-е издание – ECMAScript 2022. | Шу-юй Го, Майкл Фикарра, Кевин Гиббонс |
14 | июнь 2023 г. [12] | ECMAScript 2023 (ES2023) | См. № 14-е издание – ECMAScript 2023. | Шу-юй Го, Майкл Фикарра, Кевин Гиббонс |
15 | июнь 2024 г. [13] | ECMAScript 2024 (ES2024) | См. № 15-е издание – ECMAScript 2024. | Шу-юй Го, Майкл Фикарра, Кевин Гиббонс |
16 | (в ожидании) | ECMAScript 2025 (ES2025) | Ожидается, см. рассматриваемые функции: #ES.next | (в ожидании) |
В июне 2004 года Ecma International опубликовала стандарт ECMA-357, определяющий расширение ECMAScript, известное как ECMAScript для XML (E4X). Ecma также определила «компактный профиль» для ECMAScript, известный как ES-CP или ECMA 327, который был разработан для устройств с ограниченными ресурсами и был отменен в 2015 году. [14]
4-е издание (заброшено)
[ редактировать ]Предлагаемое четвертое издание ECMA-262 ( ECMAScript 4 или ES4 ) должно было стать первым крупным обновлением ECMAScript с момента публикации третьего издания в 1999 году. Первоначально планировалось, что спецификация (вместе с эталонной реализацией) будет завершена к октябрю 2008 года. [15] Первый проект был датирован февралем 1999 года. [16] Обзор языка был опубликован рабочей группой 23 октября 2007 года. [17]
К августу 2008 года предложение 4-го издания ECMAScript было сокращено до кода проекта под названием ECMAScript Harmony . В то время обсуждались следующие возможности Harmony:
- занятия ,
- модульная система ,
- необязательные аннотации типов и статическая типизация , возможно, с использованием системы структурных типов ,
- генераторы и итераторы ,
- деструктурирующее задание и
- алгебраические типы данных .
Целью этих функций было частично улучшить поддержку программирования в больших средах и позволить пожертвовать некоторой способностью сценария быть динамичным для повышения производительности. Например, Tamarin — виртуальная машина для ActionScript, разработанная Adobe с открытым исходным кодом — имеет поддержку JIT- компиляции для определенных классов скриптов.
Помимо введения новых функций, в 4-й редакции предлагалось исправить некоторые ошибки ES3. [18] [19] Эти и другие исправления, а также поддержка кодирования/декодирования JSON включены в спецификацию ECMAScript 5-го издания. [20]
Работа над редакцией 4 началась после того, как была завершена спецификация ES-CP (Compact Profile), и продолжалась примерно 18 месяцев, в ходе которых был достигнут медленный прогресс в балансировании теории спецификации Netscape JavaScript 2 с опытом реализации Microsoft JScript .NET. Через некоторое время акцент сместился на стандарт ECMAScript for XML (E4X). Обновление не обошлось без споров. В конце 2007 года дебаты между Эйхом, впоследствии техническим директором Mozilla Foundation , и Крисом Уилсоном , Microsoft архитектором платформы для Internet Explorer , стали достоянием общественности в ряде блогов . Уилсон предупредил, что, поскольку предложенные изменения в ECMAScript сделали его в некоторых отношениях обратно несовместимым с более ранними версиями языка, это обновление равнозначно «слому Интернета». [21] и что заинтересованные стороны, выступавшие против изменений, были «скрыты от глаз». [22] Эйх ответил, заявив, что Уилсон, похоже, «повторяет ложь в блогах», и отрицал попытки подавить инакомыслие, и призвал критиков привести конкретные примеры несовместимости. [23] Он отметил, что Microsoft Silverlight и Adobe AIR используют C# и ActionScript 3 соответственно, оба из которых крупнее и сложнее, чем ECMAScript Edition 3. [24]
5-е издание – ECMAScript 2009 г.
[ редактировать ]Yahoo, Microsoft, Google и другие несогласные с 4-м изданием сформировали свой собственный подкомитет для разработки менее амбициозного обновления ECMAScript 3, предварительно названного ECMAScript 3.1. В этом выпуске основное внимание будет уделено обновлениям безопасности и библиотек с большим упором на совместимость. После вышеупомянутого публичного спора команды ECMAScript 3.1 и ECMAScript 4 пришли к компромиссу: над двумя редакциями будут работать параллельно, при координации между командами, чтобы гарантировать, что ECMAScript 3.1 останется строгим подмножеством ECMAScript 4 как в семантике, так и в синтаксис.
Однако различия в философии в каждой команде приводили к неоднократным нарушениям правила подмножества, и оставалось сомнительным, что несогласные с ECMAScript 4 когда-либо будут поддерживать или реализовывать ECMAScript 4 в будущем. Спустя более года после разногласий по поводу будущего ECMAScript в Техническом комитете Ecma 39, в июле 2008 года обе команды достигли нового компромисса: Брендан Эйх объявил, что Ecma TC39 сосредоточит работу на ECMAScript 3.1 (позже переименованном в ECMAScript, 5th Edition) при полном сотрудничестве всех сторон, и поставщики планируют реализовать как минимум две совместимые реализации к началу 2009 года. [25] [26] В апреле 2009 года Ecma TC39 опубликовал «окончательный» проект 5-го издания и объявил, что тестирование совместимых реализаций, как ожидается, будет завершено к середине июля. [27] 3 декабря 2009 г. было опубликовано 5-е издание ECMA-262. [28]
Дополнения включают JSON , String.trim()
чтобы легко удалить пробелы вокруг строки ( " example "
к "example"
), String.charAt()
для возврата одного символа из заданной позиции в строке и Array.isArray()
. Запятая после последней пары значений объекта ( var example = { "property1":"value1", "property2":"value2", }
) также больше не вызывает синтаксическую ошибку. [29]
6-е издание – ECMAScript 2015.
[ редактировать ]Шестая редакция ECMAScript 6 ( ES6 ), позже переименованная в ECMAScript 2015, была завершена в июне 2015 года. [4] [30] В этом обновлении добавлен новый синтаксис для написания сложных приложений, включая объявления классов ( class Foo { ... }
), модули ES6, такие как import * as moduleName from "..."; export const Foo
, но определяет их семантически в тех же терминах, что и строгий режим ECMAScript 5. Другие новые функции включают итераторы и for...of
циклы, генераторы в стиле Python , выражение стрелочной функции ( () => {...}
), let
ключевое слово для локальных объявлений, const
ключевое слово для постоянных локальных объявлений, двоичных данных, типизированных массивов, новых коллекций (карты, наборы и WeakMap), промисов , числовых и математических улучшений, отражения, прокси (метапрограммирование для виртуальных объектов и оболочек) и литералов шаблонов с использованием обратных кавычек ( `
) для многострочных строк без escape-символов . [31] [32] Полный список обширен. [33] [34] Будучи первой спецификацией ECMAScript Harmony, она также известна как «ES6 Harmony».
7-е издание – ECMAScript 2016
[ редактировать ]Седьмое издание ECMAScript 2016 было завершено в июне 2016 года. [5] Его особенности включают оператор возведения в степень **
для чисел, await
, async
ключевые слова для асинхронного программирования (в качестве подготовки к ES2017) и Array.prototype.includes
функция. [5] Оператор возведения в степень эквивалентен Math.pow
, но предоставляет более простой синтаксис, аналогичный таким языкам, как Python, F#, Perl и Ruby. async
/ await
был провозглашен более простым способом использования обещаний и разработки асинхронного кода.
8-е издание – ECMAScript 2017
[ редактировать ]Восьмое издание ECMAScript 2017 было завершено в июне 2017 года. [6] Его особенности включают в себя Object.values
, Object.entries
и Object.getOwnPropertyDescriptors
функции для удобного манипулирования объектами, async
/ await
конструкции, использующие генераторы и обещания, а также дополнительные функции для параллелизма и атомарности . Он также включает в себя String.prototype.padStart()
. [35] [6]
9-е издание – ECMAScript 2018
[ редактировать ]Девятая редакция ECMAScript 2018 была завершена в июне 2018 года. [7] Новые функции включают оператор распространения и остальные параметры ( ...
) для объектных литералов, асинхронная итерация, Promise.prototype.finally
и дополнения к RegExp. [7]
Оператор распространения позволяет легко копировать свойства объекта, как показано ниже.
let object = {a: 1, b: 2}
let objectClone = Object.assign({}, object) // before ES2018
let objectClone = {...object} // ES2018 syntax
let otherObject = {c: 3, ...object}
console.log(otherObject) // -> {c: 3, a: 1, b: 2}
10-е издание – ECMAScript 2019
[ редактировать ]Десятое издание, или ECMAScript 2019, было опубликовано в июне 2019 года. [8] Добавленные функции включают, помимо прочего, Array.prototype.flat
, Array.prototype.flatMap
, меняется на Array.sort
, и Object.fromEntries
. [8]
Array.sort
теперь гарантированно является стабильным , что означает, что элементы с одинаковыми ключами сортировки не будут менять относительный порядок до и после операции сортировки. Array.prototype.flat(depth=1)
выравнивает массив до указанной глубины, что означает, что все элементы подмассива (до указанной глубины) рекурсивно объединяются.
Еще одним заметным изменением является то, что так называемая привязка catch стала необязательной. [36]
11-е издание – ECMAScript 2020
[ редактировать ]11-е издание, или ECMAScript 2020, было опубликовано в июне 2020 года. [9] Помимо новых функций, в этой версии представлен BigInt
примитивный тип для целых чисел произвольного размера, нулевой оператор объединения и объект globalThis . [9]
BigInts создаются либо с помощью BigInt
конструктор или с синтаксисом 10n
, где «n» ставится после числового литерала. BigInts позволяют представлять и манипулировать целыми числами за пределами Number.MAX_SAFE_INTEGER
, а числа представлены 64-битным значением IEEE 754 двойной точности . Встроенные функции в Math
несовместимы с BigInts; например, возведение в степень BigInts должно выполняться с помощью **
оператор вместо Math.pow
.
Нулевой оператор объединения, ??
, возвращает свой правый операнд, когда его левая часть равна null
или undefined
. Это контрастирует с ||
оператор, который вернет "string"
для всех «ложных» значений, таких как приведенные ниже.
undefined ?? "string" // -> "string"
null ?? "string" // -> "string"
false ?? "string" // -> false
NaN ?? "string" // -> NaN
Необязательная цепочка позволяет получить доступ к вложенным свойствам объекта без проверки AND на каждом уровне. Примером является const zipcode = person?.address?.zipcode
. Если какое-либо из свойств отсутствует, zipcode
будет undefined
.
12-е издание – ECMAScript 2021
[ редактировать ]Двенадцатое издание ECMAScript 2021 было опубликовано в июне 2021 года. [10] В этой версии представлены replaceAll
метод для строк; Promise.any
, комбинатор обещаний, который замыкается при выполнении входного значения; AggregateError
, новый тип ошибки для одновременного представления нескольких ошибок; логические операторы присваивания ( ??=
, &&=
, ||=
); WeakRef
, для обращения к целевому объекту без сохранения его от сборки мусора и FinalizationRegistry
, для управления регистрацией и отменой регистрации операций очистки, выполняемых при сборке мусора целевых объектов; разделители для числовых литералов ( 1_000
); и Array.prototype.sort
был сделан более точным, что уменьшило количество случаев, которые приводят к порядку сортировки, определяемому реализацией.
13-е издание – ECMAScript 2022
[ редактировать ]13-е издание ECMAScript 2022 было опубликовано в июне 2022 года. [11] В этой версии представлен верхний уровень await
, что позволяет использовать ключевое слово на верхнем уровне модулей; новые элементы класса: публичные и частные поля экземпляра, публичные и частные статические поля, частные методы и методы доступа экземпляра, а также частные статические методы и методы доступа; статические блоки внутри классов для выполнения инициализации оценки для каждого класса; тот #x in obj
синтаксис для проверки наличия частных полей в объектах; индексы соответствия регулярным выражениям через /d
флаг, который предоставляет начальный и конечный индексы для совпадающих подстрок; тот cause
недвижимость на Error
объекты, которые можно использовать для записи причинно-следственной связи в ошибках; тот at
метод для строк, массивов и типизированных массивов, который допускает относительную индексацию; и Object.hasOwn
, удобная альтернатива Object.prototype.hasOwnProperty
.
14-е издание – ECMAScript 2023
[ редактировать ]14-е издание ECMAScript 2023 было опубликовано в июне 2023 года. [37] В этой версии представлены toSorted
, toReversed
, with
, findLast
, и findLastIndex
методы на Array.prototype
и TypedArray.prototype
, а также toSpliced
метод на Array.prototype
; добавлена поддержка #!
комментарии shebang в начале файлов для облегчения работы с исполняемыми файлами ECMAScript; и позволило использовать большинство символов в качестве ключей в слабых коллекциях.
15-е издание – ECMAScript 2024
[ редактировать ]15-е издание ECMAScript 2024 было опубликовано в июне 2024 года. [38]
ES.Next
[ редактировать ]ES.Next — это динамическое имя, которое относится к следующей версии на момент написания. Функции ES.Next включают готовые предложения (также известные как «предложения этапа 4»), перечисленные в готовых предложениях , которые не являются частью утвержденной спецификации. Языковой комитет следует модели «живой спецификации», поэтому эти изменения являются частью стандарта, а ратификация — формальностью. [39]
Ссылки
[ редактировать ]- ^ «DevEdge Online — Справочное руководство по JavaScript в Интернете» . Архивировано из оригинала 14 июня 1997 г. Проверено 13 октября 2023 г.
{{cite web}}
: CS1 maint: bot: исходный статус URL неизвестен ( ссылка ) - ^ «Справочник по JavaScript» . Архивировано из оригинала 20 апреля 1999 г. Проверено 13 октября 2023 г.
{{cite web}}
: CS1 maint: bot: исходный статус URL неизвестен ( ссылка ) - ^ Архивировано в Ghostarchive и Wayback Machine : «Изменения в JavaScript, часть 1: EcmaScript 5» . Ютуб. 18 мая 2009 г. Проверено 31 октября 2013 г.
- ^ Перейти обратно: а б «Спецификация языка ECMAScript 2015» . Экма Интернешнл . Июнь 2015 г. Архивировано из оригинала 14 февраля 2022 г. Проверено 28 июня 2021 г.
- ^ Перейти обратно: а б с «Спецификация языка ECMAScript 2016» . Экма Интернешнл . Июнь 2016 г. Архивировано из оригинала 14 февраля 2022 г. Проверено 28 июня 2021 г.
- ^ Перейти обратно: а б с «Спецификация языка ECMAScript 2017» . Экма Интернешнл . Июнь 2017 г. Архивировано из оригинала 17 января 2021 г. Проверено 28 июня 2021 г.
- ^ Перейти обратно: а б с «Спецификация языка ECMAScript 2018» . Экма Интернешнл . Июнь 2018 г. Архивировано из оригинала 14 февраля 2022 г. Проверено 28 июня 2021 г.
- ^ Перейти обратно: а б с «Спецификация языка ECMAScript 2019» . Экма Интернешнл . Июнь 2019 г. Архивировано из оригинала 14 февраля 2022 г. Проверено 28 июня 2021 г.
- ^ Перейти обратно: а б с «Спецификация языка ECMAScript 2020» . Экма Интернешнл . Июнь 2020 г. Архивировано из оригинала 18 января 2021 г. Проверено 28 июня 2021 г.
- ^ Перейти обратно: а б «Спецификация языка ECMAScript 2021» . Экма Интернешнл . Июнь 2021 г. Архивировано из оригинала 24 июня 2021 г. Проверено 26 июня 2021 г.
- ^ Перейти обратно: а б «Спецификация языка ECMAScript 2022» . Экма Интернешнл . Июнь 2022 г. Архивировано из оригинала 24 декабря 2023 г. Проверено 22 июля 2024 г.
- ^ «Спецификация языка ECMAScript 2023» . Экма Интернешнл . Июнь 2023 г. Архивировано из оригинала 20 декабря 2023 г. Проверено 22 июля 2024 г.
- ^ «Спецификация языка ECMAScript 2024» . Экма Интернешнл . Июнь 2024.
{{cite web}}
: CS1 maint: статус URL ( ссылка ) - ^ 24 марта 2015 г. Заметки о встрече, заархивированные 23 июня 2017 г. в Wayback Machine . ESDОбсудить. Также см. Отозванные стандарты Ecma, заархивированные 13 августа 2015 г. на Wayback Machine . ЭКМА.
- ^ Хансен, Ларс Т (22 октября 2007 г.). «Выпущен обзорный документ ES4» . сайт mozilla.org . Mail.mozilla.org. Архивировано из оригинала 2 ноября 2013 г. Проверено 31 октября 2013 г.
- ^ Пейротт, Себастьян (04 марта 2021 г.). «Реальная история ECMAScript 4» . auth0.com . Архивировано из оригинала 12 мая 2020 г. Проверено 5 марта 2020 г.
- ^ «Предлагаемое 4-е издание ECMAScript – Обзор языка» (PDF) . ecmascript.org . 23 октября 2007 г. Архивировано из оригинала (PDF) 23 декабря 2010 г.
- ^ Джон Ресиг. «Джон Ресиг – Исправления ошибок в JavaScript 2» . Ejohn.org. Архивировано из оригинала 2 ноября 2013 г. Проверено 31 октября 2013 г.
- ^ «Совместимость между ES3 и предлагаемым ES4» (PDF) . Ecmascript.org. Архивировано из оригинала (PDF) 24 июля 2014 г. Проверено 31 октября 2013 г.
- ^ «Спецификация языка ECMAScript» (PDF) . Экма Интернешнл . 19 апреля 2009 г. Архивировано из оригинала (PDF) 19 апреля 2009 г. Проверено 19 марта 2018 г.
- ^ «ECMAScript 3 и последующие версии – IEBlog – Домашняя страница сайта – Блоги MSDN» . Блоги.msdn.com. 30 октября 2007 г. Архивировано из оригинала 11 февраля 2010 г. Проверено 31 октября 2013 г.
- ^ «Что я думаю о ES4. – Альбатрос! – Главная страница – Блоги MSDN» . Блоги.msdn.com. 31 октября 2007 г. Архивировано из оригинала 27 января 2010 г. Проверено 31 октября 2013 г.
- ^ «Открытое письмо Крису Уилсону» . Брендан Эйх. 31 октября 2007 г. Архивировано из оригинала 16 сентября 2011 г. Проверено 31 октября 2013 г.
- ^ «JavaScript 2 и открытая сеть» . 20 ноября 2007 г. Архивировано из оригинала 10 февраля 2014 г. Проверено 20 января 2014 г.
- ^ «Гармония ECMAScript» . Mail.mozilla.org. 13 августа 2008 г. Архивировано из оригинала 26 августа 2013 г. Проверено 31 октября 2013 г.
- ^ «Важная веха в стандартизации JavaScript — блог JScript — главная страница сайта — блоги MSDN» . Блоги.msdn.com. 09.04.2009. Архивировано из оригинала 23 марта 2010 г. Проверено 31 октября 2013 г.
- ^ «Ecma International завершает основную переработку ECMAScript» . Экма Интернешнл. 09.04.2009. Архивировано из оригинала 4 сентября 2011 г. Проверено 22 мая 2009 г.
- ^ «Предыдущие новости Экмы» . Ecma-international.org. Архивировано из оригинала 16 апреля 2020 г. Проверено 29 марта 2020 г.
- ^ Версии JavaScript от W3schools
- ^ Крилл, Пол. «Официально: ECMAScript 6 одобрен» . Инфомир . Архивировано из оригинала 23 марта 2018 г. Проверено 19 марта 2018 г.
- ^ «5 замечательных функций EcmaScript 6 (ES6 Harmony) – Wintellect» . Винтеллект . 24 марта 2014 г. Архивировано из оригинала 22 июля 2017 г. Проверено 19 марта 2018 г.
- ^ «ECMAScript 6 (ES6): что нового в следующей версии JavaScript» . Разрушительный журнал . 2015-10-28. Архивировано из оригинала 24 ноября 2017 г. Проверено 19 марта 2018 г.
- ^ «ECMAScript 6: Новые возможности: обзор и сравнение» . es6-features.org . Архивировано из оригинала 18 марта 2018 г. Проверено 19 марта 2018 г.
- ^ «Стандарт ECMA-262, 6-е издание / июнь 2015 г. Спецификация языка ECMAScript 2015 14.2 Определения функций стрелок» . www.ecma-international.org . 2015. Архивировано из оригинала 14 февраля 2022 г. Проверено 28 июня 2021 г.
- ^ «ECMAScript 2017 (ES8): последний набор функций» . 2альности . Архивировано из оригинала 23 апреля 2018 г. Проверено 23 апреля 2018 г.
- ^ «ES2019: необязательная привязка catch» . 2ality.com . 13 августа 2017 г. Проверено 26 апреля 2022 г.
- ^ «Спецификация языка ECMAScript 2023» . Экма Интернешнл . Июнь 2023 года . Проверено 30 июня 2023 г.
- ^ «Спецификация языка ECMAScript 2024» . Экма Интернешнл . Июнь 2024.
- ^ «ES.Next — это следующая редакция спецификации языка ECMAScript — Tuto Javascript» . gdevops.gitlab.io . Проверено 5 июля 2023 г.
Внешние ссылки
[ редактировать ]JavaScript 1.0
[ редактировать ]- Как реализовано в Netscape Navigator 2.0 перед отправкой первой версии на стандартизацию как Ecmascript: «Руководство по созданию JavaScript» . Архивировано из оригинала 13 июня 1997 г. Проверено 13 октября 2023 г.
{{cite web}}
: CS1 maint: bot: исходный статус URL неизвестен ( ссылка )
стандарты ИСО
[ редактировать ]стандарты ECMA
[ редактировать ]- ECMA-262 Спецификация языка ECMAScript
- 1-е издание, июнь 1997 г.: PDF.
- 2-е издание, август 1998 г.: PDF.
- 3-е издание, декабрь 1999 г.: PDF.
- Последнее издание 3, март 2000 г.: PDF.
- 4-е издание (обзор): PDF
- 4-е издание (окончательный вариант): HTML , PDF.
- 5-е издание, декабрь 2009 г.: PDF.
- Версия 5.1, июнь 2011 г.: HTML , PDF
- 6-е издание, июнь 2015 г. (Спецификация языка ECMAScript 2015): HTML , PDF
- 7-е издание, июнь 2016 г. (Спецификация языка ECMAScript 2016): HTML , PDF
- 8-е издание, июнь 2017 г. (Спецификация языка ECMAScript 2017): HTML , PDF
- 9-е издание, июнь 2018 г. (Спецификация языка ECMAScript 2018): HTML , PDF
- 10-е издание, июнь 2019 г. (Спецификация языка ECMAScript 2019): HTML , PDF
- 11-е издание, июнь 2020 г. (Спецификация языка ECMAScript 2020): HTML , PDF
- 12-е издание, июнь 2021 г. (Спецификация языка ECMAScript 2021): HTML , PDF
- 13-е издание, июнь 2022 г. (Спецификация языка ECMAScript 2022): HTML , PDF
- 14-е издание, июнь 2023 г. (Спецификация языка ECMAScript 2023): HTML , PDF
- 15-е издание, июнь 2024 г. (Спецификация языка ECMAScript 2024): HTML , PDF
- ECMA-290 Спецификация компонентов ECMAScript (июнь 1999 г.)
- ECMA-327 Компактный профиль ECMAScript 3-го издания (июнь 2001 г.)
- ECMA-357 Спецификация ECMAScript для XML (E4X) (июнь 2004 г.)