JavaScript/介紹
Javascript 是一種以 ECMAScript 為語言標準、形式化的、解釋執行的程式語言。Javascript 引擎負責解釋執行 Javascript,引擎最常見的形式是嵌入在瀏覽器中用於執行網頁中的 Javascript,但也可以嵌入 Javascript 運行環境(如 node),用來執行任意 Javascript 文件。
第一個 Javascript 引擎由網景公司開發出來,用於嵌入 Web 瀏覽器。V8 是一種為了 Google Chrome 瀏覽器而開發的 Javascript 引擎,它也可以用作獨立的解釋器。Adobe Flash 使用叫做 ActionScript 的 Javascript 引擎來開發 Flash 程序。
初步認識
編輯- 更常見的JavaScript是用於客戶端的網絡編程。
- 它的確切名稱是ECMAScript。
- 它是由網景通訊公司(現在為Mozilla基金會的)研發的。
- JavaScript不是Java。
Java與JavaScript僅僅都在語法上承襲C語言的風格,但兩者互不相干。 - JavaScript不是JScript。
JScript和JavaScript的應用範圍相似,但兩者也是互不相干的。 - JavaScript不只是網頁的程式語言,它和其他程式語言一樣複雜,甚至更複雜。
與Java的聯繫
編輯JavaScript與Java是兩種不同的語言,就像印度和印度尼西亞的關係一樣。儘管JavaScript跟Java在名字上有着相同的開頭,容易令人產生聯想。但它們是出自不同的公司,源自不同的目的。網景通訊公司研發了JavaScript而太陽計算機系統公司研發了Java。JavaScript在現在多用於瀏覽器端的各種應用,而Java則在如今成為伺服器端應用的重頭語言。JavaScript與Java在語法上有些相似,但這只是因為他們的語法風格都襲自C語言。接下來的一節假定你具有一定編程方面的背景知識,如果你願意你可以直接進入下一節。
Java 中的變量具有靜態的類型(例如:整數或字符串),它在程序的生命周期中保持不變。而在 JavaScript 中,變量是動態類型的,在程序的生命周期中可以更改。Java 中的變量必須在使用之前聲明,而在 JavaScript 中,引用未賦值的變量會得到undefined
。
Java 擁有大量的庫,可供導入程序中使用。JavaScript 不提供任何方式來導入庫或外部 JavaScript 代碼。如果需要其他功能,例如:V8引擎提供的一些基本功能,和許多 Web 瀏覽器中的文檔對象模型,則 JavaScript 引擎需要在ECMAScript語言標準上做進一步的擴展。
Java 包含類和對象實例,而 JavaScript 使用原型。
在Java中,要輸出「Hello world!」,代碼是:
System.out.println("Hello world!");
在JavaScript中則是:
document.write("Hello world!");
本書的受眾
編輯本書假設您在使用計算機,Web瀏覽器,文本編輯器和軟件開發環境方面具有豐富的知識和經驗。由於您不會在本書中學習 HTML,CSS,Java 或網站設計等相關內容,因此請查閱適當的書籍以了解這些主題。
版本歷史
編輯版本 | 說明 | 實現 |
---|---|---|
JavaScript1.0 | 原始版本,基本廢棄。 | 由Netscape 2 實現。 |
JavaScript1.1 | 引入真正的Array數組,消除了大量錯誤。 | 由Netscape 3 實現。 |
JavaScript1.2 | 引入switch語句、正規表達式和大量新特性,基本上符合ECMAv1。 | 由Netscape 4 實現。 |
JavaScript1.3 | 修正了不兼容性,符合ECMAv1。 | 由Netscape 4.5 實現。 |
JavaScript1.4 | 只有Netscape 伺服器產品 實現。 | |
JavaScript1.5 | 引入了異常處理,符合ECMAv3。 | 由Mozilla和Netscape 6 實現。 |
JavaScript1.6 | 引入E4X、Array的item location methods和取代方法、Array generic、String generic。 | |
JavaScript1.7 | 引入generator、取代器、Array comprehensions、let關鍵詞、解構賦值(Destructuring assignment) |