JavaScript與ECMAScript


  1. JavaScript歷史回顧

  2. JavaScript誕生時的主要目的: 處理以前由服務器語言負責的一些輸入驗證操作。


  3. JavaScript簡史

  4. 在隨後幾年裏,web日益流行,三個不同的JavaScript版本接連被三大公司開發出來,沒有標準規定JavaScript的語法和特性。
    最後,ECMA中的TC39完成了ECMA-262——定義一種名爲ECMAscript的新腳本語言的標準。
    自此以後,瀏覽器開發商致力於將ECMAscript作爲各自JavaScript實現的基礎。


  5. JavaScript實現

  6. JavaScript:1、核心(ECMAscript) 2、文檔對象模型(DOM) 3、瀏覽器對象模型(BOM)
    這裏寫圖片描述
    3.1
    ECMAscript定義的只是JavaScript的基礎,而在此基礎之上可以構建更完善的腳本語言。
    web瀏覽器只是ECMAscript實現可能的宿主環境之一。
    宿主環境不僅提供基本的ECMAScript實現,同時也會提供JavaScript的擴展,以便語言與環境之間對接交互。
    而這些擴展——如DOM,則利用ECMAscript的核心類型和語法提供更多更具體的功能,以便實現針對環境的操作。

    ECMAScript規定了JavaScript的下列組成部分:

  • 語法
  • 類型
  • 語句
  • 關鍵字
  • 保留字
  • 操作符
  • 對象

    ECMA-262第一版本質上與JavaScript1.1相同——只不過刪除了所有針對瀏覽器的代碼並做了一些較小的改動:ECMA-262要求支持Unicode標準(從而支持多語言開發)。

    ECMA-262第2版主要是編輯加工的結果。一般不使用第二版來衡量ECMAScript實現的兼容性。

    ECMA-262第3版纔是對該標準第一次真正的修改。修改的內容涉及字符串處理、錯誤定義和數值輸出。還新增了對正則表達式、新控制語句、try-catch異常處理的支持,並圍繞標準的國際化做出一些小的修改。

    ECMA-262第五版澄清第3版中已知的歧義並增添了新的功能。新功能包括原生JSON對象(用於解析和序列化JSON數據)、繼承的方法和高級屬性定義。另外還包含一種嚴格模式,對ECMAScript引擎解釋和執行代碼進行補充說明。


    3.2
    ECMAScript兼容的定義:

  • 支持ECMA-262描述的所有“類型、值、對象、屬性、函數以及程序句法和語義”;

  • 支持Unicode;
  • 添加ECMA-262沒有描述的“更多類型、值、對象、屬性和函數”(新增特性主要是指該標準中沒有規定的新對象和對象的新屬性。);
  • 支持ECMA-262沒有定義的“程序和正則表達式語法”(也就是說,可以修改和擴展內置的正則表達式語法);
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章