在 JavaScript 推出後,Microsoft 在 Internet Explorer 3.0(1996 年 8 月)中實作了相同的語言,並以不同的名稱 JScript 命名。為了部分遏制 Microsoft,Netscape 決定標準化 JavaScript,並要求標準組織 Ecma International 主持標準。ECMA-262 規範的制定工作於 1996 年 11 月開始。由於 Sun(現為 Oracle)擁有 JavaScript 一詞的商標,因此它無法成為要標準化的語言的正式名稱。因此,選擇了 ECMAScript,它源自 JavaScript 和 Ecma。不過,這個名稱僅用於指稱語言版本(其中一個指稱規範)。大家仍然稱呼該語言為 JavaScript。
ECMA-262 由 Ecma 的 技術委員會 39(TC39)管理和演進。其成員包括 Microsoft、Mozilla 和 Google 等公司,這些公司指定員工參與委員會工作;範例包括 Brendan Eich、Allen Wirfs-Brock(ECMA-262 編輯)和 David Herman。為了推動 ECMAScript 的設計,TC39 在開放管道(例如郵件清單 es-discuss)上舉辦討論,並定期舉行會議。這些會議由 TC39 成員和受邀專家參加。在 2013 年初,與會人數介於 15 到 25 人之間。
以下是 ECMAScript 版本(或 ECMA-262 的 版本)及其 主要功能 的清單:
do-while
、正規表示式、新的字串方法(concat
、match
、replace
、slice
、split
搭配正規表示式等)、例外處理等
ECMAScript 4 是作為 JavaScript 的下一個版本開發的,其原型是用 ML 編寫的。但是,TC39 無法就其功能集達成共識。為了避免僵局,委員會於 2008 年 7 月底開會,並達成協議,總結為 四點
因此,ECMAScript 4 開發人員同意讓 Harmony 比 ECMAScript 4 不那麼激進,而 TC39 的其他成員則同意持續推進。
達成共識並建立標準並不容易,但感謝上述各方的合作,JavaScript 是一種真正的開放語言,由多家廠商實作,且具有極高的相容性。這種相容性是由非常詳細但具體的規格所實現。例如,規格經常使用偽程式碼,並由測試套件 test262 補充,用於檢查 ECMAScript 實作是否符合規定。有趣的是,ECMAScript 並非由萬維網聯盟 (W3C) 管理。在 JavaScript 和 HTML5 重疊的地方,TC39 和 W3C 會進行合作。