跳至內容

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 或網站設計等相關內容,因此請查閱適當的書籍以了解這些主題。

版本歷史

[編輯]
JavaScript
版本 說明 實現
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)