JavaScript語言概況
當(dāng)前位置:點晴教程→知識管理交流
→『 技術(shù)文檔交流 』
internet時代,造就了我們新的工作和生活方式,其互聯(lián)性、開放性和共享信息的模式,打破了傳統(tǒng)信息傳播方式的重重壁壘,為我們帶來了新的機遇。隨著計算機和信息時代的到來,人類社會前進的腳步在逐漸加快,每一天都有新的事情發(fā)生,每一天都在創(chuàng)造著奇跡。隨著internet技術(shù)的突飛猛進,各行各業(yè)都在加入internet的行業(yè)中來。無論從管理方面,還是從商業(yè)角度來看,internet都可以帶來無限生機。通過internet,可以實現(xiàn)地區(qū)、集體乃至個人的連接,從而達到一種“統(tǒng)一的和諧”。那么怎樣把自己的或公司的信息資源加入到www 服務(wù)器,是廣大用戶日益關(guān)心的問題。采用超鏈技術(shù)(超文本和超媒體技術(shù))是實現(xiàn)這個目標(biāo)最簡單的、最快速的手段和途徑。具體實現(xiàn)這種手段的支持環(huán)境,那就是html超文本標(biāo)識語言。通過它們可制作所需的web網(wǎng)頁。[br] 通過超文本(hyper text)和超媒體(hyper media)技術(shù)結(jié)合超鏈接(hyper link)的鏈接功能將各種信息組織成網(wǎng)絡(luò)結(jié)構(gòu)(web),構(gòu)成網(wǎng)絡(luò)文檔(document),實現(xiàn)internet上的“漫游”。通過html符號的描述就可以實現(xiàn)文字、表格、聲音、圖像、動畫等多媒體信息的檢索。[br] 然而采用這種超鏈技術(shù)存在有一定的缺陷,那就是它只能提供一種靜態(tài)的信息資源,缺少動態(tài)的客戶端與服務(wù)器端的交互。雖然可通過cgi(common gateway interface)通用網(wǎng)關(guān)接口實現(xiàn)一定的交互,但由于該方法編程較為復(fù)雜,因而在一段時間防礙了internet技術(shù)的發(fā)展。而javascript的出現(xiàn),無凝為internet網(wǎng)上用戶帶來了一線生機??梢赃@樣說,javascript的出現(xiàn)是時代的需求,是當(dāng)今的信息時代造就了javascript。[br] javascript的出現(xiàn),它可以使得信息和用戶之間不僅只是一種顯示和瀏覽的關(guān)系,而是實現(xiàn)了一種實時的、動態(tài)的、可交式的表達能力。從而基于cgi靜態(tài)的html頁面將被可提供動態(tài)實時信息,并對客戶操作進行反應(yīng)的web頁面的取代。javascript腳本正是滿足這種需求而產(chǎn)生的語言。它深受廣泛用戶的喜愛的歡迎。它是眾多腳本語言中較為優(yōu)秀的一種,它與www的結(jié)合有效地實現(xiàn)了網(wǎng)絡(luò)計算和網(wǎng)絡(luò)計算機的藍圖。無凝java家族將占領(lǐng)internet網(wǎng)絡(luò)的主導(dǎo)地位。因此,盡快掌握javascript腳本語言編程方法是我國廣大用戶日益關(guān)心的。[br][br][b][color=#ff0000]一、什么是javascript[/color][/b][br] javascript是一種基于對象(object)和事件驅(qū)動(event driven)并具有安全性能的腳本語言。使用它的目的是與html超文本標(biāo)記語言、java 腳本語言(java小程序)一起實現(xiàn)在一個web頁面中鏈接多個對象,與web客戶交互作用。從而可以開發(fā)客戶端的應(yīng)用程序等。它是通過嵌入或調(diào)入在標(biāo)準(zhǔn)的html語言中實現(xiàn)的。它的出現(xiàn)彌補了html語言的缺陷,它是java與html折衷的選擇,具有以下幾個基本特點:[br][br] [b]腳本編寫語言[/b][br] javascript是一種腳本語言,它采用小程序段的方式實現(xiàn)編程。像其它腳本語言一樣,javascript同樣已是一種解釋性語言,它提供了一個易的開發(fā)過程。 [br] 它的基本結(jié)構(gòu)形式與c、c++、vb、delphi十分類似。但它不像這些語言一樣,需要先編譯,而是在程序運行過程中被逐行地解釋。它與html標(biāo)識結(jié)合在一起,從而方便用戶的使用操作。 [br][br] [b]基于對象的語言[/b][br] javascript是一種基于對象的語言,同時以可以看作一種面向?qū)ο蟮?。這意味著它能運用自己已經(jīng)創(chuàng)建的對象。因此,許多功能可以來自于腳本環(huán)境中對象的方法與腳本的相互作用。 [br][br] [b]簡單性[/b][br] javascript的簡單性主要體現(xiàn)在:首先它是一種基于java基本語句和控制流之上的簡單而緊湊的設(shè)計, 從而對于學(xué)習(xí)java是一種非常好的過渡。其次它的變量類型是采用弱類型,并未使用嚴(yán)格的數(shù)據(jù)類型。 [br][br] [b]安全性[/b][br] javascript是一種安全性語言,它不允許訪問本地的硬盤,并不能將數(shù)據(jù)存入到服務(wù)器上,不允許對網(wǎng)絡(luò)文檔進行修改和刪除,只能通過瀏覽器實現(xiàn)信息瀏覽或動態(tài)交互。從而有效地防止數(shù)據(jù)的丟失。 [br][br] [b]動態(tài)性[/b][br] javascript是動態(tài)的,它可以直接對用戶或客戶輸入做出響應(yīng),無須經(jīng)過web服務(wù)程序。它對用戶的反映響應(yīng),是采用以事件驅(qū)動的方式進行的。所謂事件驅(qū)動,就是指在主頁(home page)中執(zhí)行了某種操作所產(chǎn)生的動作,就稱為“事件”(event)。比如按下鼠標(biāo)、移動窗口、選擇菜單等都可以視為事件。當(dāng)事件發(fā)生后,可能會引起相應(yīng)的事件響應(yīng)。 [br][br] [b]跨平臺性[/b][br] javascript是依賴于瀏覽器本身,與操作環(huán)境無關(guān),只要能運行瀏覽器的計算機,并支持javascript的瀏覽器就可正確執(zhí)行。從而實現(xiàn)了“編寫一次,走遍天下”的夢想。 [br][br] 實際上javascript最杰出之處在于可以用很小的程序做大量的事。無須有高性能的電腦,軟件僅需一個字處理軟件及一瀏覽器,無須web服務(wù)器通道,通過自己的電腦即可完成所有的事情。[br] 綜合所述javascript 是一種新的描述語言,它可以被箝入到 html 的文件之中。 javascript語言可以做到回應(yīng)使用者的需求事件 (如: form 的輸入) ,而不用任何的網(wǎng)路來回傳輸資料,所以當(dāng)一位使用者輸入一項資料時,它不用經(jīng)過傳給伺服端 (server)處理,再傳回來的過程,而直接可以被客戶端 (client) 的應(yīng)用程式所處理。[br] javascript 和 java 很類似,但到底并不一樣! java 是一種比 javascript 更復(fù)雜許多的程式語言,而 javascript 則是相當(dāng)容易了解的語言。javascript 創(chuàng)作者可以不那麼注重程式技巧,所以許多 java 的特性在 java script 中并不支援。 [br][br][b][color=#ff0000]二、javascript和java的區(qū)別[/color][/b][br] 雖然javascript與java有緊密的聯(lián)系,但卻是兩個公司開發(fā)的不同的兩個產(chǎn)品。java是sun公司推出的新一代面向?qū)ο蟮某绦蛟O(shè)計語言,特別適合于internet應(yīng)用程序開發(fā);而javascript是netscape公司的產(chǎn)品,其目的是為了擴展netscape navigator功能,而開發(fā)的一種可以嵌入web頁面中的基于對象和事件驅(qū)動的解釋性語言,它的前身是live script;而java的前身是oak語言。下面對兩種語言間的異同作如下比較:[br][br] [b]基于對象和面向?qū)ο骩/b][br] java是一種真正的面向?qū)ο蟮恼Z言,即使是開發(fā)簡單的程序,必須設(shè)計對象。 [br] javascript是種腳本語言,它可以用來制作與網(wǎng)絡(luò)無關(guān)的,與用戶交互作用的復(fù)雜軟件。它是一種基于對象(object based)和事件驅(qū)動(event driver)的編程語言。因而它本身提供了非常豐富的內(nèi)部對象供設(shè)計人員使用。 [br][br] [b]解釋和編譯[/b][br] 兩種語言在其瀏覽器中所執(zhí)行的方式不一樣。java的源代碼在傳遞到客戶端執(zhí)行之前,必須經(jīng)過編譯,因而客戶端上必須具有相應(yīng)平臺上的仿真器或解釋器,它可以通過編譯器或解釋器實現(xiàn)獨立于某個特定的平臺編譯代碼的束縛。[br] javascript是一種解釋性編程語言,其源代碼在發(fā)往客戶端執(zhí)行之前不需經(jīng)過編譯,而是將文本格式的字符代碼發(fā)送給客戶編由瀏覽器解釋執(zhí)行。 [br][br] [b]強變量和弱變量[/b][br] 兩種語言所采取的變量是不一樣的。[br] java采用強類型變量檢查,即所有變量在編譯之前必須作聲明。如: [br] integer x; [br] string y;[br] x=1234;[br] x=4321;[br] 其中x=1234說明是一個整數(shù),y=4321說明是一個字符串。[br] javascript中變量聲明,采用其弱類型。即變量在使用前不需作聲明,而是解釋器在運行時檢查其數(shù)據(jù)類型,如:[br] x=1234;[br] y="4321";[br] 前者說明x為其數(shù)值型變量,而后者說明y為字符型變量。[br][br] [b]代碼格式不一樣[/b][br] java是一種與html無關(guān)的格式,必須通過像html中引用外媒體那么進行裝載,其代碼以字節(jié)代碼的形式保存在獨立的文檔中。[br] javascript的代碼是一種文本字符格式,可以直接嵌入html文檔中,并且可動態(tài)裝載。編寫html文檔就像編輯文本文件一樣方便。[br][br] [b]嵌入方式不一樣[/b][br] 在html文檔中,兩種編程語言的標(biāo)識不同,javascript使用來標(biāo)識,而java使用來標(biāo)識。 [br][br] [b]靜態(tài)聯(lián)編和動態(tài)聯(lián)編[/b][br] java采用靜態(tài)聯(lián)編,即java的對象引用必須在編譯時的進行,以使編譯器能夠?qū)崿F(xiàn)強類型檢查。[br] javascript采用動態(tài)聯(lián)編,即javascript的對象引用在運行時進行檢查,如不經(jīng)編譯則就無法實現(xiàn)對象引用的檢查。 [br][br][b][color=#ff0000]三、javascript程序運行環(huán)境[/color][/b][br]java運行環(huán)境[br] 軟件環(huán)境:[br] windows 95/98或windows nt。[br] netscape navigator x.0或internet explorer x.0。[br] 用于編輯html文檔的字符編輯器(ws、wps、notepad、wordpad等)或html文檔編輯器。[br] 硬件配置:[br] 首先必須具備運行windows 95/98或windows nt的基本硬件配置環(huán)境。推薦:[br] 基本內(nèi)存32m。[br] crt只少需要256顏色,分辨率在640x480以上。[br] cpu只少233以上。[br] 鼠標(biāo)和其它外部設(shè)置(根據(jù)需要選用)。[br][br][b][color=#ff0000]四、編寫第一個javascript程序[/color][/b][br] 下面我們通過一個例子,編寫第一個javascript程序。通過它可說明javascript的腳本是怎樣被嵌入到html文檔中的。[br]test1.html文檔:[br]
[br][br] [br][br][br]在internet explore5.0中運行行后的結(jié)果見圖1-1所示。[br][img]http://ijavascript.cn/admincp/attachment.php?aid=42[/img][br]圖1-1 程序運行的結(jié)果[br][br][color=#0000ff]說明: test.html是html文檔,其標(biāo)識格式為標(biāo)準(zhǔn)的html格式;[br]如同html標(biāo)識語言一樣, javascript程序代碼是一些可用字處理軟件瀏覽的文本,它在描述頁面的html相關(guān)區(qū)域出現(xiàn)。[br]javascript代碼由 說明。在標(biāo)識之間就可加入javascript腳本。[br]alert()是javascript的窗口對象方法,其功能是彈出一個具有ok對話框并顯示()中的字符串。[br]通過標(biāo)識說明:若不認識javascript代碼的瀏覽器,則所有在其中的標(biāo)識均被忽略;若認識,則執(zhí)行其結(jié)果。使用注釋這是一個好的編程習(xí)慣,它使其他人可以讀懂你的語言。[br]javascript 以 標(biāo)簽結(jié)束。 [/color] 該文章在 2010/5/20 21:46:56 編輯過 |
關(guān)鍵字查詢
相關(guān)文章
正在查詢... |