ECMAScript

出典: フリ?百科事典『ウィキペディア(Wikipedia)』
ECMAScript
パラダイム ??型プログラミング 、マルチパラダイムプログラミング、 プロトタイプベ?ス 命令型プログラミング   ウィキデータを編集
登場時期 1997年 (27年前)  ( 1997 )
開?者 ブレンダン?アイク   ウィキデータを編集
最新リリ?ス ECMA-262 14th Edition (ECMAScript 2023) [1] / 2023年6月 (1年前)  ( 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月 (27年前)  ( 1997-06 )
最新版
14th Edition (ECMAScript 2023)
( 2023年6月 (1年前)  ( 2023-06 ) )
種別 スクリプト言語
派生元 JavaScript
ウェブサイト

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 公開日 以前のバ?ジョンとの違い 編集者
1 1997年6月 初版 Guy L. Steele, Jr.
2 1998年6月 Editionとしての仕?はそのままであり、ISO/IEC 16262 international standardに完全な??をした Mike Cowlishaw
3 1999年12月 正規表現、よりよい文字列の取り扱い、新しいコントロ?ル構文、try/catch例外?理、より?格なエラ??理、?字のその他の書式化フォ?マット Mike Cowlishaw
4 放棄 4th Editionは放棄された。言語の複?化に?する政治的な差異による。いくつかの成果は5thの基礎として採用され、いくつかは6thの基礎となっている。
5 2009年12月 "strictモ?ド"、初期化時に?生しがちなエラ?を回避するための追加仕?の追加。多くの曖昧な部分、および仕?に準?しつつも現?世界の??の融通の利く振る舞いを明確にした。いくらかの新機能、getterやsetter、 JSON ライブラリ のサポ?ト、より完全な オブジェクト ?性 リフレクション [7] Pratap Lakshman, Allen Wirfs-Brock
5.1 2011年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.includes Brian 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リビジョン
Mozilla およびその派生品 JavaScript 1.8.5 ECMA-262 5.1 edition
ECMA-357 [呼? 1]
Internet Explorer JScript (IE8まで) 5.8 ECMA-262 3rd edition
JavaScript (Chakra) 11.0 ECMA-262 5.1 edition
Google Chrome
Opera
JavaScript ECMA-262 5.1 edition
Safari (JSCore) JavaScript ECMA-262 5.1 edition
Konqueror (KJS) JavaScript ECMA-262 3rd edition
iCab InScript ECMA-262 3rd edition
Microsoft .NET JScript .NET 10.0 ECMA-262 4th草案 [呼? 2]
Adobe Flash ActionScript 3 ECMA-262 4th草案 [呼? 3]
ECMA-357
Adobe Acrobat JavaScript 1.5 ECMA-262 3rd edition
Adobe Creative Suite ExtendScript ECMA-262 3rd edition
DMDScript DMDScript ECMA-262 3rd edition
Qt QtScript ECMA-262 3rd edition
Max/MSP JavaScript 1.5 ECMA-262 3rd edition
  1. ^ Mozillaは 1.8 Beta 1 以降で E4X をサポ?トしている。
  2. ^ 2001年頃の マイクロソフト の草案であり、?自に開?を進めたもので、現在のECMAScript 4草案とは大きく異なる。
  3. ^ 2001年頃のNetscapeの草案に近く、現在のECMAScript 4草案のサブセットに近い。

ECMAScript 4 [ 編集 ]

ECMAScript 4は過去2回仕?作成が挑?されたが、仕?がまとまらず、失敗に終わっている。

1回目 [ 編集 ]

2000年?2003年ごろ行われた。主に、? Netscape [10] マイクロソフト によって行われたが、意見がまとまらずに、打ち切りとなった。この時の案は ActionScript へと引き?がれた。

2回目 [ 編集 ]

2007年?2008年ごろ、2回目の仕?作成が行われた。大きく機能を追加される予定であったが、意見がまとまらず、 2008年 8月13日 に、小規模の改善にとどまる、ECMAScript 3.1を進めることとなった [11] 。仕?は、 http://www.ecmascript.org/docs.php にて公開されている。

以下のような予定があった。

?? [ 編集 ]

脚注 [ 編集 ]

  1. ^ ECMA-262. ECMAScript® 2023 language specification. 14th edition, June 2023 ” (英語). Ecmaインタ?ナショナル (2023年6月). 2024年3月19日 ??。
  2. ^ 過去には RFC   4329 で「application/ecmascript」とされていたが、互換性のために RFC   9239 で?止(OBSOLETE)され「text/javascript」に統一された。
  3. ^ ISO/IEC 16262は、 ISO/IEC 16262:1998 ISO/IEC 16262:2002 ISO/IEC 16262:2011 と改訂されてきたが、2021年8月時点の最新の ISO/IEC 22275:2018 Information technology ? Programming languages, their environments, and system software interfaces ? * ECMAScript Specification Suite として、
    • ECMA-262, ECMAScript Language Specification
    • ECMA-402, ECMAScript Internationalization API Specification
    • ISO/IEC 21778, Information technology ? The JSON data interchange syntax (Adoption of ECMA-404)
    の最新規格を一括して?照するようになった。
  4. ^ JIS X 3060:2000は、ISO/IEC 16262:1998(ES1相?)の日本語?。
  5. ^ JIS X 3060:2000, ECMAScript言語, Information technology -- ECMAScript language specification ” (2000年6月30日). 2021年8月16日 ??。 “???際規格:ISO/IEC 16262:1998 (IDT); IDT=identical(一致)”
  6. ^ http://www.wirfs-brock.com/allen/posts/778
  7. ^ JavaScriptの?更, Part 1: EcmaScript 5
  8. ^ ECMAScript Language Specification - ECMA-262 Edition 5.1
  9. ^ ECMAScript 2023 Language Specification
  10. ^ https://www-archive.mozilla.org/js/language/old-es4
  11. ^ https://mail.mozilla.org/pipermail/es-discuss/2008-August/003400.html

?連項目 [ 編集 ]

外部リンク [ 編集 ]