この記事は検証可能な参考文献や出典が全く示されていないか、不十分です。出典を追加して記事の信頼性向上にご協力ください。(このテンプレートの使い方)
出典検索?: "ECMAScript"
ECMAScriptパラダイム関数型プログラミング、マルチパラダイムプログラミング、プロトタイプベース、命令型プログラミング
登場時期1997年 (27年前) (1997)
開発者ブレンダン・アイク
最新リリースECMA-262 14th Edition (ECMAScript 2023)[1]/ 2023年6月 (11 か月前) (2023-06)
型付けダック・タイピング、弱い動的型付け
方言JavaScript, ActionScript, JScript, QtScript, DMDScript, InScript
影響を受けた言語Self、HyperTalk、AWK、C言語、CoffeeScript、Perl、Python、Java、Scheme
ウェブサイトecma-international.org
拡張子es
テンプレートを表示
ECMAScript
拡張子.es
MIMEタイプtext/javascript[2]
開発者サン・マイクロシステムズ
Ecma International
初版1997年6月 (26年前) (1997-06)
最新版14th Edition (ECMAScript 2023)
(2023年6月 (11 か月前) (2023-06))
種別スクリプト言語
派生元JavaScript
ウェブサイト.mw-parser-output ul.cslist,.mw-parser-output ul.sslist{margin:0;padding:0;display:inline-block;list-style:none}.mw-parser-output .cslist li,.mw-parser-output .sslist li{margin:0;padding:0 0 0 0;display:inline-block}.mw-parser-output .cslist li:after{content:"、"}.mw-parser-output .sslist li:after{content:";"}.mw-parser-output .cslist li:last-child:after,.mw-parser-output .sslist li:last-child:after{content:none}
ECMA-262
ECMA-402
ECMA-419
ECMA-414
ECMA-290(廃止)
ECMA-327(廃止)
ECMA-357(廃止)
プログラミング言語>>他のプログラミング言語
ECMAScript(エクマスクリプト)は、Ecmaインターナショナルにおいて標準化されたJavaScriptの国際規格である。また、ISO/IEC JTC 1においてはISO/IEC 22275:2018[3]、日本産業規格においてはJIS X 3060:2000として規格化されている[4][5]。 この記事は更新が必要とされています。
バージョン
この記事には古い情報が掲載されています。編集の際に新しい情報を記事に反映
ECMAScript仕様は、Ecma InternationalにてECMA-262という規格番号で標準化されている。改訂にあたっては版 (edition) が更新されている。
6th editionから、「ECMAScript 2015」仕様の名称に発行年が付加されることになった。以降、ECMAScriptは毎年改訂されることになり、以降特定の版を指す場合は、edition名ではなく年号つきの仕様書名で呼ばれることが推奨されている[6]。
Edition公開日以前のバージョンとの違い編集者
11997年6月初版Guy L. Steele, Jr.
21998年6月Editionとしての仕様はそのままであり、ISO/IEC 16262 international standardに完全な対応をしたMike Cowlishaw
31999年12月正規表現、よりよい文字列の取り扱い、新しいコントロール構文、try/catch例外処理、より厳格なエラー処理、数字のその他の書式化フォーマットMike Cowlishaw
4放棄4th Editionは放棄された。言語の複雑化に関する政治的な差異による。いくつかの成果は5thの基礎として採用され、いくつかは6thの基礎となっている。
52009年12月"strictモード"、初期化時に発生しがちなエラーを回避するための追加仕様の追加。多くの曖昧な部分、および仕様に準拠しつつも現実世界の実装の融通の利く振る舞いを明確にした。いくらかの新機能、getterやsetter、JSONライブラリのサポート、より完全なオブジェクトの属性のリフレクション[7]Pratap Lakshman, Allen Wirfs-Brock
5.12011年6月[8]ISO/IEC 16262:2011規格と同様の表記に修正Pratap Lakshman, Allen Wirfs-Brock
6 (2015)2015年6月クラス、モジュール、イテレータ、for/ofループ、Pythonスタイルのジェネレータ、アロー関数、2進数および8進数の整数リテラル、Map、Set、WeakMap、WeakSet、プロキシ、テンプレート文字列、let、const、型付き配列、デフォルト引数、Symbol、Promise、分割代入、可変長引数Allen Wirfs-Brock
7 (2016)2016年6月冪乗演算子、Array.prototype.includesBrian Terlson
8 (2017)2017年6月非同期関数 (async/await)、SharedArrayBufferとAtomics、String.padStart/padEnd、Object.values/entries、Object.getOwnPropertyDescriptors、関数の引数における末尾のカンマ許容
9 (2018)2018年6月オブジェクトに対するスプレッド構文、非同期イテレーション、Promise.prototype.finally、正規表現への機能追加Brian Terlson
10 (2019)2019年6月Array.prototype.flat、Array.prototype.flatMap、Object.fromEntriesの追加、他Brian Terlson, Bradley Farias, Jordan Harband
11 (2020)2020年6月オプショナルチェイニング演算子?.、Null合体演算子??、BigIntの追加、他Jordan Harband, Kevin Smith
12 (2021)2021年6月Jordan Harband, Shu-yu Guo, Michael Ficarra, Kevin Gibbons
13 (2022)2022年6月Shu-yu Guo, Michael Ficarra, Kevin Gibbons
14 (2023)2023年6月[9]配列操作メソッドの追加、#!(シバン (Unix))のサポート、WeakMapのキーにおけるSymbolの利用。Shu-yu Guo, Michael Ficarra, Kevin Gibbons
ECMAScriptにはいくつかの拡張が存在する。
ECMA-357 (ECMAScript for XML) - 2004年公開、E4Xとして知られる
ECMA-402(国際化API) - 2012年公開
ECMA-404 (JSON) - 2013年公開
EcmaはECMAScriptのための "Compact Profile" も定義した ? ES-CP、あるいはECMA 327として知られる ? リソースの厳しいデバイス用にデザインされている。ECMAScriptのいくつかの動的な機能(『eval』関数など)はオプションにされている。これにより、処理系はプログラムの振る舞いに対してより多くの仮定ができるようになり、その結果、より良いパフォーマンス・トレードオフを実行時に得ることができるようになる。HD DVD standardはECMAScript Compact Profileに準拠し、完全なECMAScriptの支援をより少ないメモリのデバイスで実行できるよう採用している。 ECMAScript は、ウェブブラウザをはじめとする多くのアプリケーションでサポートされている。DOMとの連携はドキュメントの操作を可能にする。 アプリケーション呼称最新バージョン対応するECMAScriptリビジョン
文法詳細は「JavaScript#文法」を参照
方言およびその呼称
Mozillaおよびその派生品JavaScript1.8.5ECMA-262 5.1 edition
ECMA-357[呼称 1]
Internet ExplorerJScript(IE8まで)5.8ECMA-262 3rd edition
JavaScript (Chakra)11.0ECMA-262 5.1 edition
Google Chrome
OperaJavaScriptECMA-262 5.1 edition