ECMAScript5.1中文版
關于
關于部分不屬于規范,本規范是w3c 規范的鏡像版,目前以100%完成,但尚未校訂,本規范為閱讀而生,意在優化閱讀體驗。
本規范是ECMAScript5.1中文版,下面是本人整理的一些其他es規范
- http://www.ecmascript.org/
- w3c 中文版
- ECMAScript 5.1 pdf(英)
- ecma-international ecma 262 5.1(英)
- Mozilla es5.1(英)
- ECMAScript 3 中文版 pdf
- ECMAScript 6 入門(阮一峰)
- Mozilla es6 草案(英)
- ECMAScript harmony 標準草案(英)
介紹
這一Ecma標準建立在一些原本的技術上,最為著名的是JavaScript(網景)和JScript (微軟)。語言由網景的Brendan Eich發明而第一次出現在這個公司的Navigator 2.0瀏覽器上。它出現在所有Netscape后來的瀏覽器以及微軟從Internet Explorer 3.0之后的所有瀏覽器上。
這一標準的編制自1996年十一月開始。這一Ecma標準的第一個版本被1997年六月的Ecma General Assembly采納。
上述Ecma標準被以快速跟進流程提交至ISO/IEC JTC 1,并作為于1998年四月作為ISO/IEC 16262通過。1998年六月Ecma General Assembly通過了ECMA-262第二版以保持它與ISO/IEC 16262的完全一致性。第一版到第二版的變更僅僅是編輯性質的。
第三版標準引入了強大的正則表達式,更佳的字符串處理,新的控制語句,try/catch異常處理,更嚴密地錯誤定義,格式化的數字輸出以及一些為國際化和未來語言成長預留的小變更。ECMAScript標準的第三版1999年十二月的Ecma General Assembly采納并于2002年六月作為ISO/IEC 16262:2002發布。
自第三版發布以來,ECMAScript因其與萬維網的關聯而獲得了廣泛采用,它已經成為所有web瀏覽器實質上都提供的一種編程語言。為了編制第四版 ECMAScript,有很多有意義的工作。盡管這工作沒能完成而且也沒有作為ECMAScript的第四版發布,它促進了語言的進化。 ECMAScript第五版(發布為ECMA-262 5th edition)紙面化了很多事實上已經在瀏覽器形成共識的語言規范解析并且增加了對自第三版發布以來的新功能的支持。這些功能包括訪問器屬性,反射創建以及對象檢測,屬性特性的程序控制,新增的數組操作函數,JSON對象編碼格式,以及提供了改進的錯誤檢查以及程序安全性的嚴格模式。
這一ECMAScript 5.1版本標準完全與國際標準ISO/IEC 16262:2011的第三版本一致。
ECMAScript是一個充滿活力的語言,而且語言的演進尚未完成。有意義的技術性增強將會在未來版本的規范中持續進行。
這一Ecma規范由2011年六月Ecma General Assembly采納。
范圍
此標準定義了 ECMAScript 腳本語言。
一致性
符合標準的 ECMAScript 實現,必須提供并支持本規范描述的所有類型、值、對象、屬性、函數、程序語法和語義。
符合標準的 ECMAScript 實現,應當能解釋符合 Unic ode 標準3.0或更高版本,以 UCS-2 或 UTF-16 作為編碼格式的 ISO/IEC 10646-1 第3級實現里的字符。如果沒有額外指明采用的 ISO/IEC 10646-1 子集,則假定組號為300的 BMP 子集。如果沒有額外指明采用的編碼格式,則假定編碼格式為 UTF-16。
符合標準的 ECMAScript 實現,允許提供超出本規范描述的額外類型、值、對象、屬性、函數。 尤其是本規范中描述的對象,是允許提供未在本規范中描述的屬性和屬性值的。
符合標準的 ECMAScript 實現,允許支持本規范未描述的程序語法和正則表達式語法。 尤其是本規范 7.6.1.2 列出的“未來保留字”,是允許作為程序語法的。
參考文獻
為了實現符合本規范的應用程序,下列引用文檔是不可或缺的。對于標注了日期的文檔,僅適用標注的那個版本。 對于未標注日期的文檔,以文檔的最新版為準(包括任何修訂版)。
ISO/IEC 9899:1996, Programming Languages – C, including amendment 1 and technical corrigenda 1 and 2
ISO/IEC 10646-1:1993, Information Technology – Universal Multiple-Octet Coded Character Set (UCS) plus its amendments and corrigenda
概述
本節包含對 ECMAScript 語言非規范性的概述。
ECMAScript 是在宿主環境中執行計算,處理對象的面向對象編程語言。這里定義的 ECMAScript 并未打算要計算性自足;事實上,本規范沒有任何針對輸入外部數據或輸出計算結果的條文。相反,我們期望 ECMAScript 程序的計算環境可提供本規范中描述的對象和其它設施之外的、某些特定環境下的 宿主 (host) 對象,除了說明宿主對象應該提供可被 ECMAScript 程序訪問的某些屬性,調用的某些方法外,關于它的其他描述和行為超出了本規范涉及的范圍。
腳本語言 是一種用于操作,自定義,自動化現有系統設施的編程語言。在這種系統中,已經可以通過一個用戶界面使用可用功能,腳本語言是一種機制,暴漏這些功能給程序控制。這樣,現有系統可以說給完善腳本語言能力需要的對象和設施提供了一個宿主環境。腳本語言被設計成專業和非專業程序員都能使用。
ECMAScript 最初被設計為 Web 腳本語言 ,提供了一種機制,使瀏覽器里的網頁更加活躍,成為基于 Web 的客戶 - 服務器架構的一部分執行服務器計算。ECMAScript 可以為各種宿主環境提供核心的腳本功能,因此本文檔為不依賴特定宿主環境的核心腳本語言作出規范。
ECMAScript 的一些機能和其他編程語言的類似;特別是 Java?,Self,和 Scheme。以下文獻描述了他們:
Gosling, James, Bill Joy and Guy Steele. The Java? Language Specification. Addison Wesley Publishing Co., 1996.
Ungar, David, and Smith, Randall B. Self: The Power of Simplicity. OOPSLA '87 Conference Proceedings, pp. 227–241, Orlando, FL, October 1987.
IEEE Standard for the Scheme Programming Language. IEEE Std 1178-1990.
Web 腳本語言
WEB 瀏覽器為引入客戶端計算能力而提供 ECMAScript 宿主環境,例如,它提供的對象有:windows,menus,pop-ups,dialog boxes,text areas,anchors,frames,history,cookies 及輸入 / 輸出等等。進一步來說,WEB 瀏覽器中提供的這種宿主環境,它提供了一種方式,使得腳本代碼可以去處理諸如改變焦點、頁面和圖片的加載、卸載、錯誤和放棄,選擇,表單提交和鼠標交互等等事件。腳本代碼出現在 HTML 中,顯示出來的頁面是一個用戶接口元素與固定的和計算出來的文本和圖片的集合。腳本代碼根據用戶的交互而做出反應,并不需要存在一個主程序。
WEB 服務器為了服務端的計算則提供了一個完全不一樣的宿主環境,包括的對象有:requests,clients,files 以及數據鎖定和分享的機制。通過瀏覽器端腳本及服務端腳本的配合使用,在為基于 WEB 方式的應用程序提供定制的用戶接口時,可以將計算分布到客戶端和服務端進行。
每一種支持 ECMAScript 的 WEB 瀏覽器和服務器都將它們自身的宿主環境作為 ECMAScript 的補充,以使得 ECMAScript 的執行環境變得完整。
詳細內容:http://yanhaijing.com/es5/#0