JavaScript是一種具有物件導向能力的、解釋型的程式設計語言。JavaScript是一種鬆散類型的語言,這就是說,它的變數不必具有一個明確的類型。JavaScript中的對象把屬性名稱映射為任意的屬性值。
JavaScript在web瀏覽器中應用最為廣泛,通常稱作用戶端的JavaScript,以強調指令碼是由用戶端電腦運行而不是由web伺服器啟動並執行。用戶端的JavaScript的一部分是正式標準化的,一部分是事實上的標準,一部分是特定於瀏覽器的擴充。跨瀏覽器的相容性常常是用戶端的JavaScript程式員所關心的一個重要問題。
由於JavaScript是一種解釋型語言而不是編譯型語言,它往往被認為比較簡單。但是在簡單的外表下,JavaScript卻是一種具有豐富功能的程式設計語言,它和其他所有語言一樣複雜,甚至比某些語言還複雜得多。
JavaScript語言的官方名稱是ECMAScript。但是這個名字只有在明確地引用標準的時候才正式使用。當把一個JavaScript解譯器嵌入web瀏覽器時,就形成了用戶端JavaScript。用戶端JavaScript將JavaScript解譯器的指令碼化能力與web瀏覽器定義的文件物件模型(DOM)結合在一起。用戶端的JavaScript技術是諸如DHTML這樣的web開發技術以及Ajax這樣的架構的核心。
下面看一段簡單的JavaScript代碼:
<html><head><title>Factorials</title></head><body><h2>Table of Factorials</h2><script>var fact=1;for(i=1;i<10;i++){ fact=fact*i; document.write(i+"!="+fact+"<br>");}</script></body></html>
在這個例子中,標記<script>和</script>用來在HTML檔案中嵌入JavaScript代碼。在這個例子中我們可以學習到document.write( )的使用。當HTML文檔載入到瀏覽器的時候,這個方法用來動態地把HTML文本輸出到一個HTML文檔。其實JavaScript在用戶端真正的強大之處在於指令碼能夠訪問HTML文檔的內容,這一點我們將在後續文章中繼續探討。
JavaScript是一種通用目的的程式設計語言,並且它的用途不局限於web瀏覽器。JavaScript設計用來嵌入其他任何的應用之中,並為應用提供指令碼化能力。
Mozilla提供了兩個不同版本的JavaScript1.5解譯器。其中一個是用C編寫的,叫做SpiderMonkey。另一個是用Java編寫的,叫做Rhino。
如果我們編寫的javaScript代碼非常短小的話,可以使用javascript:URL偽協議來計算JavaScript運算式並返回計算結果。一個JavaScript URL是由javascript:協議說明符加上任意的JavaScript代碼(語句之間用分號隔開)構成的。當瀏覽器裝載了這樣的URL時,它將執行其中的JavaScript代碼。這樣的URL中的最後一個運算式的值將被轉換為字串,該字串會被作為新文檔顯示在web瀏覽器中。譬如:
javascript:x=3;(x<5)? "x is less": "x is greater"
在FireFox Web瀏覽器中,也可以在JavaScript控制台輸入單獨一行來實驗,可通過Tool菜單訪問到JavaScript控制台,只要輸入想要計算的運算式或希望執行的語句就可以了。當使用控制台而不是本地地址欄的時候,可忽略掉javascript:首碼。