1、JavaScript是什么?JavaScript簡介


JavaScript 是面向 Web 的編程語言,獲得了所有網頁瀏覽器的支持,是目前使用最廣泛的腳本編程語言之一,也是網頁設計和 Web 應用必須掌握的基本工具。

JavaScript 歷史

1995 年 2 月,Netscape 公司發布 Netscape Navigator 2 瀏覽器,並在這個瀏覽器中免費提供了一個開發工具——LiveScript。由於當時 Java 比較流行,Netscape 便把 LiveScript 改名為 JavaScript,這也是最初的 JavaScript 1.0 版本。

由於 JavaScript 1.0 很受歡迎,Netscape 在 Netscape Navigator 3 中又發布了 JavaScript 1.1 版本。不久,微軟在 Internet Explorer 3 中也加入了腳本編程功能。為了避免與 Netscape 的 JavaScript 產生糾紛,微軟特意將其命名為 JScript。

1997 年,歐洲計算機制造商協會(ECMA)以 JavaScript 1.1 為基礎制訂了腳本語言標准——ECMA-262,並命名為 ECMAScript。

1998 年,國際標准化組織和國際電工委員會(ISO/IEC)采用了 ECMAScript 標准(即 ISO/IEC-16262)。自此,瀏覽器廠商就以 ECMAScript 作為各自 JavaScript 實現的規范標准。JavaScript 正式從各自為政走向了規范統一。

ECMAScript 起源

1997 年,ECMA 發布 262 號標准文件(ECMA-262)的第一版,規定了腳本語言的實現標准,並將這種語言命名為 ECMAScript。這個版本就是 ECMAScript 1.0 版。

之所以不叫 JavaScript,主要有以下兩個原因:

  • 商標限制。Java 是 Sun 公司的商標,根據授權協議,只有 Netscape 公司可以合法使用 JavaScript 這個名字,而且 JavaScript 己經被 Netscape 公司注冊為商標。
  • 體現公益性。該標准的制訂者是 ECMA 組織,而不是 Netscape 公司,這樣有利於確保規范的開放性和中立性。


簡單概括,ECMAScript 是 JavaScript 語言的規范標准,JavaScript 是 ECMAScript 的一種實現。注意,這兩個詞在一般語境中是可以互換的。

EECMAScript 版本

1998 年 6 月,ECMAScript 2.0 版發布。

1999 年 12 月,ECMAScript 3.0 版發布,並成為 JavaScript 的通用標准,獲得廣泛支持。

2007 年 10 月,ECMAScript 4.0 版草案發布,對 3.0 版做了大幅升級。由於 4.0 版的目標過於激進,各方對於是否通過這個標准產生了嚴重分歧。

2008 年 7月,ECMA 中止 ECMAScript 4.0 的開發,將其中涉及現有功能改善的一小部分發布為 ECMAScript 3.1。不久,ECMAScript 3.1 改名為 ECMAScript 5。

2009 年 12 月,ECMAScript 5.0 版正式發布。

2011 年 6 月,ECMAScript 5.1 版發布,並且成為 ISO 國際標准(ISO/IEC 16262:2011)。

2013 年 12 月,ECMAScript 6 版草案發布。

2015 年 6 月,ECMAScript 6 發布正式版本,並更名為 ECMAScript 2015 。Mozilla 在這個標准的基礎上推出了 JavaScript 2.0。

從此以后,JavaScript 開始以年份命名,新版本將按照 “ECMAScript+年份” 的形式發布。目前最新 版本為 ECMAScript 2018,於 2018 年 7 月正式發布。

瀏覽器支持

目前 5 大主流瀏覽器都支持 ECMAScript 5,具體說明如下:

  • Opera 11.60+
  • IE 9+
  • Firefox 4+
  • Safari 5.1+
  • Chrome 13+


詳細信息可以訪問 http://kangax.github.io/compat-table/es5/ 了解。

ECMAScript 6 的支持情況可以訪問 http://kangax.github.io/compat-table/es6/ 了解。

IE9 不支持嚴格模式,直到 IE 10 才開始;Safari 5.1 仍不支持 Function.prototype.bind,盡管 Function.prototype.bind 已經被 Webkit 所支持。

對於舊版瀏覽器的支持信息,可以查看 Juriy Zaytsev 的 ECMAScript 5 兼容性列表(http:// kangax.github.io/compat-table/es5/)。

JavaScript 構成

ECMAScript 是 JavaScript 的標准,但它並不等同於 JavaScript,也不是唯一被標准化的規范。

實際上,一個完整的 JavaScript 實現由以下 3 個不同部分組成:

  • 核心(ECMAScript):語言核心部分。
  • 文檔對象模型(Document Object Model,DOM):網頁文檔操作標准。
  • 瀏覽器對象模型(BOM):客戶端和瀏覽器窗口操作基礎。


Web 瀏覽器只是 ECMAScript 實現的宿主環境之一。宿主環境不僅提供基本的 ECMAScript 實現,同時也會提供各種擴展功能。

文檔對象模型是 HTML 的應用程序編程接口(API)。DOM 把整個文檔映射為一個樹形節點結構,以方便 JavaScript 腳本快速訪問和操作。

IE3.0 和 Netscape Navigator 3.0 提供了一種新特性,即 BOM(瀏覽器對象模型)。使用 BOM 可以對瀏覽器窗口進行訪問和操作,如移動窗口、訪問歷史記錄、動態導航等。與 DOM 不同,BOM 只是 JavaScript 的一個部分,並沒有形成規范性標准,但是所有瀏覽器都默認支持。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM