




版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、.0JavaScript腳本語言腳本語言13JavaScript腳本語言腳本語言l學習目標u通過本章的學習,了解JavaScript腳本語言編程;掌握在HTML文檔中插入JavaScript代碼;學會使用由JavaScript編寫簡單的網(wǎng)頁特效。l主要內(nèi)容uJavaScript的數(shù)據(jù)類型,以及JavaScript的常量、變量、函數(shù)、運算符、表達式;uJavaScript的流程控制及JavaScript函數(shù);uJavaScript的對象及屬性。23.1 JavaScript的歷史的歷史lJavaScript是由Netscape公司開發(fā)的一種腳本語言,結構簡單,使用方便,對用戶自身知識水平的要求并
2、不高,易學易懂。lNetscape將這種腳本語言命名為LiveScript,整個語法以Java為基礎,但比Java要簡單,同時,由于它是一種腳本語言,所以無需編譯,可由瀏覽器直接解釋運行,而不象Java那樣需要經(jīng)過編譯。33.1 JavaScript的歷史的歷史lNetscape見LiveScript大有發(fā)展前途,而SUN也覺得可以利用LiveScript為Java的普及做鋪墊,于是兩家簽訂協(xié)議,將LiveScript改為JavaScript,造就了這個強力的WEB頁開發(fā)工具。43.2 JavaScript的特點的特點lJavaScript是一種腳本語言u語法和規(guī)則沒有可編譯的編程語言那樣嚴格
3、和復雜,主要用于格式化文本和使用以編程語言編寫的已編譯好的組件。lJavaScript是基于對象的語言u面向?qū)ο蟪绦蛟O計力圖將程序設計為一些可以完成不同功能的獨立部分(即對象)的組合體。基于對象的語言本身已具有創(chuàng)建完成的對象。例如,“日期”對象。53.2 JavaScript的特點的特點lJavaScript是事件驅(qū)動的語言u當你在Web主頁中進行某種操作時,就產(chǎn)生了一個“事件”。事件幾乎可以是任何事情:點擊一個按鈕、拖動鼠標等均可視為事件。JavaScript是事件驅(qū)動的,當事件發(fā)生時,它可對之作出響應。具體如何響應某個事件取決于你的事件響應處理程序。lJavaScript是安全的語言uJa
4、vaScript被設計為通過瀏覽器來處理并顯示信息,但不能修改其它文件中的內(nèi)容。也就是說,它不能將數(shù)據(jù)存儲在Web服務器或用戶的計算機上,更不能對用戶文件進行修改或刪除操作。63.2 JavaScript的特點的特點lJavaScript是平臺無關的語言u對于一般的計算機程序,它們的運行與平臺有關。例如,除非你使用一個仿真器來模擬Windows環(huán)境,否則不可能在Macintosh上運行一個Windows應用程序。JavaScript則并不依賴于具體的計算機平臺(雖然有一些限制),它只與解釋它的瀏覽器有關。不論你使用Macintosh還是Windows,或是UNIX版本的Netscape Nav
5、igator,JavaScript都可正常運行。73.2 JavaScript的特點的特點lJavaScript不是JavauJava程序被編譯成為字節(jié)代碼文件;JavaScript則是將字符正文傳遞給客戶方并由客戶方解釋執(zhí)行uJavaScript是基于對象的,它自身具有已創(chuàng)建完畢的對象;而Java則是面向?qū)ο蟮模瑢ο蟊仨殢念愔袆?chuàng)建。uJavaScript的代碼以字符的形式嵌入在HTML文檔中;Java applets則是由文檔引用,其代碼以字節(jié)代碼的形式保存在另一個獨立的文件中。83.2 JavaScript的特點的特點lJavaScript不是Javau在HTML文檔中,用標識標明Java
6、Script腳本;而Java applets則用標識來標明。uJavaScript采用弱類型;而Java則采用強類型。uJavaScript采用動態(tài)聯(lián)編,即JavaScript的對象引用在運行時進行檢查,如不經(jīng)編譯則就無法實現(xiàn)對象引用的檢查;而Java則采用靜態(tài)聯(lián)編,即Java的對象引用必須在編譯時的進行,以使編譯器能夠?qū)崿F(xiàn)強類型檢查。93.3 第一個第一個JavaScript程序程序l【例1】第一個JavaScript程序 /JavaScript Appears here.103.3 第一個第一個JavaScript程序程序l【例1】第一個JavaScript程序u在標識 . 之間加入Jav
7、aScript腳本。u另一種插入JavaScript的方法:把JavaScript代碼寫到另一文件中(通常應該用“.js”作擴展名),然后用格式為“”的標簽把它嵌入到文檔中。113.3 第一個第一個JavaScript程序程序l【例1】第一個JavaScript程序u通過標識說明:若不認識JavaScript代碼的瀏覽器,則所有在其中的標識均被忽略;若認識,則執(zhí)行其結果。使用注釋這是一個好的編程習慣,它使其他人可以讀懂你的語言。ualert()是JavaScript的窗口對象方法,其功能是彈出一個具有OK對話框并顯示()中的字符串。123.4 JavaScript的數(shù)據(jù)類型的數(shù)據(jù)類型lJava
8、Script支持的數(shù)據(jù)類型共有四種u數(shù)值型:其中包括整型數(shù)和浮點型數(shù)。u布爾型:即邏輯值,true或false。u字符串型:由單個或多個文本字符組成。u空值:由關鍵字null代表。133.5 JavaScript的變量與表達式的變量與表達式l創(chuàng)建變量 uvar anumber = 137;/變量的值是一個數(shù) uvar anumber1=2; uvar astring = 1; / 變量的值也可以是一個字符串uvar astring1=“hello”; l表達式uxx=astring1+astring /結果是x=hello1uxx=anumber+anumber1/結果是xx=139uxx=a
9、number+astring/結果是xx=1371143.6 JavaScript的操作符的操作符l賦值操作符: u=、+=、-=、*=、 /=、%=、=、=、&=、=、|=;l條件表達式: u操作數(shù)?結果:結果; l算數(shù)操作符: u+、- 、* 、/ 、% 、+和-,y = +x; l位邏輯運算符: u&、|、; 、 153.6 JavaScript的操作符的操作符l布爾操作符: u&、|、!l比較操作符: u=、=、1)udocument.wrile(exp2);uif (Number2)udocument.write(exp3);uif(Number3)udocu
10、ment.write(exp4);u.193.9 JavaScript對象對象lJavaScript被稱為是“基于對象的” (而不是面向?qū)ο蟮?,有對象的概念:數(shù)據(jù)和操作的封裝, 但沒有繼承的概念。從定義的角度看,JavaScript程序中有兩種對象:JavaScript提供的內(nèi)置對象(built-in object)和程序中定義的對象。 203.9 JavaScript對象對象l一個對象是一個由變量、其他對象或方法組成的一個集合: u在一個對象中包含的其他對象和變量被稱為特性 (property); u在一個對象內(nèi)的函數(shù)(function)稱為這個對象的方法( method); u在一個特定
11、的對象中的一些特性的序列稱為數(shù)組,例如document對象中的image; u多維數(shù)組是由含有數(shù)組特性的對象數(shù)組構造的213.9 JavaScript對象對象l對象引用u當一個文檔加載到瀏覽器后,它所有的對象都按照瀏覽器的文檔對象所規(guī)定的嚴格層次結構存放到內(nèi)存。要有一種方法讓Script指出它要的是哪一個對象,這就是對象引用。JavaScript用嚴格的層次結構引導Script至文檔的任何區(qū)域,對每個對象的引用必須包括從頂部到對象的所有層次,直至對象名,路徑中各個相連的對象之間用句點分開。223.9 JavaScript對象對象l對象引用u變量可以寫成下面的形式: 父對象.屬性1索引1.屬性2
12、.最后屬性索引Nu對象的方法(method)可以如此引用: 對象.方法(參數(shù)組);u一個含有典型屬性和方法的對象的例子: document 是對應一個.html文檔的對象,瀏覽器讀入文檔后生成; document.writeln(“hello”) 是這個對象的一個方法,輸出帶換行的字符串; document.location是該對象的一個屬性,含有它的URL。233.9 JavaScript對象對象lJavaScript定義“類”、“函數(shù)”的語法是一樣的,而且這樣的函數(shù)就成了該類的構造函數(shù)!u變量可以寫成下面的形式: 父對象.屬性1索引1.屬性2.最后屬性索引Nu對象的方法(method)可以
13、如此引用: 對象.方法(參數(shù)組);u一個含有典型屬性和方法的對象的例子: document 是對應一個.html文檔的對象,瀏覽器讀入文檔后生成; document.writeln(“hello”) 是這個對象的一個方法,輸出帶換行的字符串; document.location是該對象的一個屬性,含有它的URL。243.9 JavaScript對象對象l【例2】用函數(shù)定義來定義類 function add( ) this.result=this.left+this.right; function MyClass(n) this.left = n; this.right = 6; this.re
14、sult = 0; this.sum = add; x = new MyClass(4); x.sum( ); document.write(x.result);253.9 JavaScript對象對象lArray對象u屬性:length,它指明了數(shù)組的長度。u方法: join()將數(shù)組值連接變?yōu)橐粋€字符串; reverse()將數(shù)組值倒序; sort()將對數(shù)組值進行排序;263.9 JavaScript對象對象lArray對象uAAA=new Array(3);uAAA0=B;uAAA1=A;uAAA2=C;udocument.write(AAA.length+);udocument.wr
15、ite(AAA.join()+);udocument.write(AAA.reverse().join()+);udocument.write(AAA.sort().join()+;273.9 JavaScript對象對象lString對象u屬性:length,表明字符串長度u方法: 字符串的轉(zhuǎn)換: toUpperCase()將字符串所有字符轉(zhuǎn)為大寫; toLowerCase()將字符串所有字符轉(zhuǎn)為小寫; toString()將非字符串對象顯示轉(zhuǎn)化為字符串。 字符串的處理 substring()將括號中參數(shù)所指的字符串片段返回; charAt() 返回括號中指定位置字符串的內(nèi)容; split(
16、) 根據(jù)指定的分隔符把一個字符串劃分為一個字符串數(shù)組283.9 JavaScript對象對象lString對象u如:newstring=astring.substring(index1,index2); / 返回一個位置在 index1和index2-1之間的字符串,特別是如果 index2 index1,子串返回 index2和index1-1之間的部分!293.9 JavaScript對象對象lDate對象u屬性:無u方法: 設定日期 setDay(),setMonth(),setYear(),setHours(),setMintes() ; 獲取日期 getDay(),getMonth(
17、),getYear(),getHours(),getMintes(); 處理時區(qū) .toGMTString() 將日期時間值轉(zhuǎn)換為的字符串(GMT時間); .tolocaleString() 將日期時間值轉(zhuǎn)換為的字符串(當?shù)貢r間)。303.9 JavaScript對象對象lMath對象u屬性: E:為自然對數(shù)的底(約為2.718); PI:為圓周率(約為3.14159); u方法: abs()絕對值計算; pow()數(shù)的冪; sqrt()計算平方根; cos()、sin()、tan() 、acos、asin()、atan(); 313.10 JavaScript事件事件l事件:用戶對網(wǎng)頁的一些特定“操作”(這些操作通常直接對應鼠標的動作)和系統(tǒng)行為。例如加載一張網(wǎng)頁,點擊一個超鏈等。l事件處理程序的引入(如何使一段JavaScript程序和事件的發(fā)生聯(lián)系起來?)。l“on事件名”是JavaScript規(guī)定的對應事件處理程序柄(event handler)的名字。例如onClick、onfocus、onSubmit等等。323.10 JavaScript事件事件l第一種引入方式:事件處理程序柄名以屬性名的形式在HTML文本中某些適當?shù)臉擞浿谐霈F(xiàn),而對應的屬性值是由網(wǎng)頁編寫者提供的JavaScript程序段(或事件處理函數(shù)名)u;l第二種引入
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 母親節(jié)小班活動方案
- 母嬰館六一活動方案
- 法治衛(wèi)士實踐活動方案
- 樣品贈送活動方案
- 母親節(jié)護膚品活動方案
- 檢察院普法宣講活動方案
- 水餃diy活動方案
- 母嬰新店開業(yè)活動方案
- 汽車結構游戲活動方案
- 棉簽用途活動方案
- 裝修改造工程施工總平面圖6
- 教師的職業(yè)生涯規(guī)劃與專業(yè)發(fā)展課件
- (完整版)標書密封條格式word
- 《關于漢語規(guī)范化的意義探析》
- 公司一年完稅證明模板
- [湖南]5萬噸凈水廠給排水工藝全套圖紙(附170頁計算說明)
- DB33T 1203-2020 建設工程施工揚塵控制技術標準
- 外國文學名著導讀
- 腦卒中患者血壓管理
- 如何制作OruxMaps離線地圖
- 校企汽修專業(yè)戰(zhàn)略合作協(xié)議書
評論
0/150
提交評論