一、什麼是JavaScript
JavaScript是一種基於對象(Object)和事件驅動(Event Driven)並具有安全效能的指令碼語言。使用它的目的是與HTML超文字標記語言 (HTML)、Java 指令碼語言(Java小程式)一起實現在一個Web頁面中連結多個對象,與Web客戶互動作用,從而可以開發用戶端的應用程式等。它是通過嵌入或調入在標準的HTML語言中實現的。它的出現彌補了HTML語言的缺陷,它是Java與HTML折衷的選擇,具有以下幾個基本特點:
1.是一種指令碼編寫語言
JavaScript是一種指令碼語言,它採用小程式段的方式實現編程。像其它指令碼語言一樣,JavaScript同樣已是一種解釋性語言,它提供了一個易的開發過程。它的基本結構形式與C、C++、VB、Delphi十分類似。但它不像這些語言一樣,需要先編譯,而是在程式運行過程中被逐行地解釋。它與HTML標識結合在一起,從而方便使用者的使用操作。
2.基於對象的語言。
JavaScript是一種基於對象的語言,同時以可以看作一種物件導向的。這意味著它能運用自己已經建立的對象。因此,許多功能可以來自於指令碼環境中對象的方法與指令碼的相互作用。
3.簡單性
JavaScript的簡單性主要體現在:首先它是一種基於Java基本語句和控制流程之上的簡單而緊湊的設計, 從而對於學習Java是一種非常好的過渡。其次它的變數類型是採用弱類型,並未使用嚴格的資料類型。
4.安全性
JavaScript是一種安全性語言,它不允許訪問本地的硬碟,並不能將資料存入到伺服器上,不允許對網路文檔進行修改和刪除,只能通過瀏覽器實現資訊瀏覽或動態互動。從而有效地防止資料的丟失。
5.動態性的
JavaScript是動態,它可以直接對使用者或客戶輸入做出響應,無須經過Web服務程式。它對使用者的反映響應,是採用以事件驅動的方式進行的。所謂事件驅動,就是指在首頁(Home Page)中執行了某種操作所產生的動作,就稱為“事件”(Event)。比如按下滑鼠、移動視窗、選擇菜單等都可以視為事件。當事件發生後,可能會引起相應的事件響應。
6.跨平台性
JavaScript是依賴於瀏覽器本身,與作業環境無關,只要能運行瀏覽器的電腦,並支援JavaScript的瀏覽器就可正確執行。從而實現了“編寫一次,走遍天下”的夢想。
實際上JavaScript最傑出之處在於可以用很小的程式做大量的事。無須有高效能的電腦,軟體僅需一個文書處理軟體及一瀏覽器,無須WEB伺服器通道,通過自己的電腦即可完成所有的事情。
綜合所述JavaScript 是一種新的描述語言,它可以被箝入到 HTML 的檔案之中。 JavaScript語言可以做到回應使用者的需求事件 (如: form 的輸入) ,而不用任何的網路來回傳輸資料,所以當一位使用者輸入一項資料時,它不用經過傳給伺服端 (server)處理,再傳回來的過程,而直接可以被用戶端 (client) 的應用程式所處理。
JavaScript和Java很類似,但到底並不一樣! Java是一種比其更複雜許多的程式語言,而JavaScript則是相當容易瞭解的語言。 其創作者可以不那麼注重程式技巧,所以許多Java的特性在Java Script中並不支援。
二、JavaScript和Java的區別
雖然JavaScript與Java有緊密的聯絡,但卻是兩個公司開發的不同的兩個產品。Java是SUN公司推出的新一代物件導向的程式設計語言,特別適合web應用程式開發;而JavaScript是Netscape公司的產品,其目的是為了擴充Netscape的瀏覽器功能而開發的一種可以嵌入Web頁面中的基於對象和事件驅動的解釋性語言, 它的前身是Live Script;而Java的前身是Oak語言。下面對兩種語言間的異同作如下比較:
1.基於對象和物件導向
Java是一種真正的物件導向的語言,即使是開發簡單的程式,必須設計對象。
JavaScript是種指令碼語言,它可以用來製作與網路無關的,與使用者互動作用的複雜軟體。它是一種基於對象(Object Based)和事件驅動(Event Driver)的程式設計語言。因而它本身提供了非常豐富的內部對象供設計人員使用。
2.解釋和編譯
兩種語言在其瀏覽器中所執行的方式不一樣。Java的原始碼在傳遞到用戶端執行之前,必須經過編譯,因而用戶端上必須具有相應平台上的模擬器或解譯器,它可以通過編譯器或解譯器實現獨立於某個特定的平台編譯代碼的束縛。
JavaScript是一種解釋性程式設計語言,其原始碼在發往用戶端執行之前不需經過編譯,而是將文字格式設定的字元代碼發送給客戶編由瀏覽器解釋執行。
3.強變數和弱變數
兩種語言所採取的變數是不一樣的。
Java採用強型別變數檢查,即所有變數在編譯之前必須作聲明。如:
Integer x;
String y;
x=1234;
x=4321;
其中X=1234說明是一個整數,Y=4321說明是一個字串。
JavaScript中變數聲明,採用其弱類型。即變數在使用前不需作聲明,而是解譯器在運行時檢查其資料類型,如:
x=1234;
y="4321";
前者說明x為其數值型變數,而後者說明y為字元型變數。
4.代碼格式不一樣
Java是一種與HTML無關的格式,必須通過像HTML中引用外媒體那麼進行裝載,其代碼以位元組代碼的形式儲存在獨立的文檔中。
JavaScript的代碼是一種文本字元格式設定,可以直接嵌入HTML文檔中,並且可動態裝載。編寫HTML文檔就像編輯文字檔一樣方便。
5.嵌入方式不一樣
在HTML文檔中,兩種程式設計語言的標識不同,JavaScript使用<Script>...</Script>來標識,而Java使用<applet>...</applet>來標識。
6.靜態聯編和動態聯編
Java採用靜態聯編,即Java的對象引用必須在編譯時間的進行,以使編譯器能夠實現強型別檢查。
JavaScript採用動態聯編,即JavaScript的對象引用在運行時進行檢查,如不經編譯則就無法實現對象引用的檢查。
三、JavaScript程式運行環境
Java運行環境:
1.軟體環境:
(1)Windows 95/98或Windows NT。
(2)Netscape Navigator x.0或Internet Explorer x.0。
(3)用於編輯HTML文檔的字元編輯器(WS、WPS、Notepad、WordPad等)或HTML文檔編輯器。
2.硬體設定:
首先必須具備運行Windows95/98或Windows NT的基本硬體設定環境。推薦:
(1)基本記憶體32M。
(2)CRT只少需要256顏色,解析度在640X480以上。
(3)CPU只少233以上。
(4)滑鼠和其它外部設定(根據需要選用)。
四、編寫第一個JavaScript程式
下面我們通過一個例子,編寫第一個JavaScript程式。通過它可說明JavaScript的指令碼是怎樣被嵌入到HTML文檔中的。
test1.html文檔:
<html>
<head>
<Script Language ="JavaScript">
// JavaScript Appears here.
alert("歡迎你瀏覽山西之窗網站!");
alert("我的網址是:www.shanxiwindow.net");
alert("山西之窗,瞭解山西的視窗!");
</Script>
</Head>
</Html>
說明:
(1)test.html是HTML文檔,其標識格式為標準的HTML格式;
(2)如同HTML標識語言一樣, JavaScript程式碼是一些可用文書處理軟體瀏覽的文本,它在描述頁面的HTML相關地區出現。
(3)JavaScript代碼由<Script Language ="JavaScript">...</Script>說明。在標識<Script Language ="JavaScript">...</Script>之間就可加入JavaScript指令碼。
(4)alert()是JavaScript的視窗對象方法,其功能是彈出一個具有OK對話方塊並顯示()中的字串。
(5)通過<!-- ...//-->標識說明:若不認識JavaScript代碼的瀏覽器,則所有在其中的標識均被忽略;若認識,則執行其結果。使用注釋這是一個好的編程習慣,它使其他人可以讀懂你的語言。
(6)JavaScript 以 </Script> 標籤結束。
從上面的執行個體分析中我們可以看出,編寫一個JavaScript程式確實非常容易的。