版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、JavaScript 入門教程 V 1.0簡介:(1)JavaScript 是運行的客戶機上的腳本語言(2)JavaScript 一般被用來改進網(wǎng)頁設(shè)計(特效) ,驗證表單,檢測瀏覽器等等 Javascript 基礎(chǔ)語法篇 實現(xiàn): 如何將 JavaScript 嵌入 html 網(wǎng)頁中?Document.write( “ HELLO WORL”D );上邊的代碼運行的結(jié)果:HELLO WORLD解釋:如果需要把一段 JavaScript 插入 HTML 頁面,我們需要使用 標簽(同時 使用 type 屬性來定義腳本語言) 。這樣就可以告訴瀏覽器, js 程序從何處開始 , 從何處結(jié)束 。 Doc
2、ument.write是 js 命令,用于向頁面輸出信息。如果沒有 標簽,那么瀏覽器會把Document.write( “HELLO WORL當(dāng)做純文本輸出。那些不支持js的瀏覽器會把腳本作為頁面的內(nèi)容來顯示。為了防止這種情況發(fā)生,我們可以使用這樣的 HTML 注釋標簽 : 正斜杠是 JavaScript 的注釋符號,它會阻止 JavaScript 編譯器對這一行 的編譯放置:(1)在 html 中如何放置 js?頁面中的腳本會在頁面載入瀏覽器后立即執(zhí)行。我們并不是想所有的腳本都這樣。有時,我們 希望當(dāng)頁面載入時執(zhí)行腳本,而另外的時候,我們則希望當(dāng)用戶觸發(fā)事件時才執(zhí)行腳本。(2 )位于 hea
3、d 部分的腳本。 當(dāng)腳本被調(diào)用時,或者當(dāng)事件被觸發(fā)時,腳本就會被執(zhí)行。當(dāng)你把腳本放置到head 部分后,就可以確保在需要使用腳本之前,它已經(jīng)被載入了。 Document.write (“HELLO WO RLLD );3 )位于 body 部分的腳本。在頁面載入時腳本就會被執(zhí)行。當(dāng)你把腳本放置于 body 部分后,它就會生成頁面的內(nèi)容。 Document.write( “ HELLO WORL”D );( 4 )同時在 head 和 body 部分的腳本。你可以在文檔中放置任何數(shù)量的腳本, 因此你既可以把腳本放置到 body ,又可以放置到 head 部分。Document.write( “
4、he部分”);Document.write( “ be部分”);(5 )調(diào)用外部 js 腳本。有時,你也許希望在若干個頁面中運行 JavaScript ,同時不在每個頁面中寫相同的腳本。為了達到這個目的,你可以將 JavaScript 寫入一個外部文件之中。然后以 .js 為后綴保存這個文件。注意: 外部文件不能包含 標簽。然后把 .js 文件指定給 標簽中的 src 屬性,就可以使用這個外部文件了:注釋:(1 )單列注釋。/ 這是標題頭decument.write(this is a title);/ 這是段落document.write( “ this is a content ” );(
5、2 )多列注釋。/*下面的代碼將輸出一個標題,一個段落*/document.write(“ this is a title” );document.write(“ this is a content” );變量: ( 1)什么是變量? 變量是存儲信息的容器,那么在數(shù)學(xué)里邊也經(jīng)常使用到變量,我們還記得在數(shù)學(xué)中我們使用變 量是需要先聲明一個變量的,那么我們的 js 腳本語言使用變量只是需要先聲明,他們區(qū)別只在于聲明的方 式不同。(2)聲明(創(chuàng)建) js 變量和賦值。在 js 中我們使用 var 聲明變量,聲明變量的同時我們可以為變量賦一個默認值:Var a;Var b= ” student ”;V
6、ar c=3;那么我們看見以上我們聲明了 3 個變量,一個沒有賦值,一個賦的 String 類型的值,一個是 int 類型的值,那有些同學(xué)就要問了,是不是寫錯了啊?這里,我很明確的告訴大家, js 是一門弱類型的語言, 它是不區(qū)分類型的,我們也可以不聲明,直接使用,那么它會自動為我們聲明,不過,鑒于一個編程的嚴 謹性,我建議大家預(yù)先聲明再使用。當(dāng)然 js 也可以重復(fù)聲明,原來的值是不會丟失的,不過一個優(yōu)秀的程 序員,應(yīng)該是不會犯這種低級的錯誤吧。注意: js 腳本變量的聲明是區(qū)分大小寫的: var a 和 var A 是兩個不同的變量(3)js 變量的運算。Var A=3;Var B;Var
7、C;B=A+3;C=B+8;正如數(shù)學(xué)一樣,在 js 腳本中,你可以使用變量來做運算?,F(xiàn)在上邊的例子你猜到 B 和 C 的值了 嗎? 運算符: (1)運算符類型。算術(shù)運算符賦值運算符比較運算符邏輯運算符條件運算符(2)算術(shù)運算符詳解。算術(shù)運算符用于執(zhí)行變量與/或值之間的算術(shù)運算。給定y=5,下面的表格解釋了這些算術(shù)運算符:運算符描述例子結(jié)果+加x=y+2x=7-減x=y-2x=3*乘x=y*2x=10/除x=y/2x=2.5%求余數(shù)(保留整數(shù))x=y%2x=1+累加x=+yx=6-遞減x=-yx=4(3)賦值運算符詳解。賦值運算符用于給JavaScript變量賦值。給定 x=10 和y=5,下面
8、的表格解釋了賦值運算符:運算符例子等價于結(jié)果=x=yx=5+=x+=yx=x+yx=15-=x-=yx=x-yx=5*=x*=yx=x*yx=50/=x/=yx=x/yx=2%=x%=yx=x%yx=0(4)用于字符串的 +運算符。+”運算符用于把文本值或字符串變量加起來(連接起來)。如需把兩個或多個字符串變量連 接起來,請使用+運算符。Var a= ” where are you going?”;Var b= ” I will going to school.”;Var c=a+b;那么你猜至U c 的值了么? c= ” where are you going?I will going to
9、 school.(5)字符串和數(shù)字之間的加法運算。Var x=5+5;Document.write(x);Var x= ” 5 ” +” 5 ”;Document.write(x);Var x= ” 5 ” +5;Document.write(x);Var x=5+” 5 ”;Document.write(x);趕快動手試一下吧。(6 )比較運算符。比較運算符在邏輯語句中使用,以測定變量或值是否相等。給定x=5,下面的表格解釋了比較運算符:運算符描述例子=等于x=8 為 false=全等(值和類型)x=5 為 true ; x=5為 false!=不等于x!=8 為 true大于x8 為 fa
10、lse小于x=大于或等于x=8 為 false=小于或等于x=8 為 trueVar x=20;lf(x21)Document.write( “ he is too young!” );(7 )邏輯運算符。邏輯運算符用于測定變量或值之間的邏輯。給定x=6 以及y=3,下表解釋了邏輯運算符:運算符描述例子&and(x 1)為 true|or(x=5 | y=5)為 false!not!(x=y)為true(8 )條件運算符。JavaScript還包含了基于某些條件對變量進行賦值的條件運算符。Varx=1;Vary=2;X=(y)?value1:value2聲明變量x,y ; x等于y嗎?如果是t
11、rue返回x的值value1,否則返回x的值value2.邏輯判斷: (1)條件判斷種類。在您編寫代碼時,經(jīng)常需要根據(jù)不同的條件完成不同的行為??梢栽诖a中使用條件語句 來完成這個任務(wù)。在JavaScript 中,我們可以使用下面幾種條件語句:If語句:在一個指定的條件成立時執(zhí)行代碼。|if.else 語句:在指定的條件成立時執(zhí)行代碼,當(dāng)條件不成立時執(zhí)行另外的代碼。if.else if.else語句:使用這個語句可以選擇執(zhí)行若干塊代碼中的一個。switch 語句:使用這個語句可以選擇執(zhí)行若干塊代碼中的一個。(2)if詳解。語法:if(條件)執(zhí)行代碼塊案例: vscript type= ” te
12、xt/javascript”Var a=10;Var b=19;lf(a(3) if else 詳解。語法:if(條件)條件滿足時執(zhí)行的代碼塊else條件不滿足時執(zhí)行的代碼塊案例:vscript type= ” text/javascript”Var a=10;Var b=19;lf(a=b)Document.write( “ You are too great!” );elseDocument.write( “I like this ” );(4) if - else if-else詳解。語法:if(條件1)條件1滿足時執(zhí)行的代碼塊else if(條件 2)條件2滿足時執(zhí)行的代碼塊else都
13、不滿足時執(zhí)行的代碼塊案例:vscript type= ” text/javascript ”Var a=10;Var b=19;lf(ab)Document.write( “I like this ” );elseDocument.write( It is too bad! ”;v/script(5) switch 詳解 語法:switch(n)Case 1:執(zhí)行代碼塊1BreakCase 2:執(zhí)行代碼塊2BreakDefault:不滿足以上兩個case的執(zhí)行的代碼塊案例:vscript type= ” text/javascriptVar a=10;switch(a)case 1:docum
14、ent.write(first ”;break;case 2:document.write( second ”; break;default:document.write( other ”;消息框:(1)消息框類別警告框確認框提示框(2) 警告框。Alert(文本”);(3) 確認框。Confirm(文本”);(4) 提示框。Prompt( 文本”,”默認值”;函數(shù): (1)將腳本編寫為函數(shù),就可以避免頁面載入時執(zhí)行該腳本。函數(shù)包含著一些代碼,這些代碼只能被事件激活,或者在函數(shù)被調(diào)用時才會執(zhí)行。你可以在頁面中的任何位置調(diào)用腳本(如果函數(shù)嵌入一個外部的.js文件,那么甚至可以從其他的頁面中調(diào)用)
15、。函數(shù)可以在頁面任何地方定義。案例:vscript type= ”ext/javascriptFunctiontest()Alert(消息框”;vinput type=button ” value= click me ”onclick= ”est() ”(2)如何定義函數(shù)語法:function test(var a,var b)要執(zhí)行的程序Var a和var b是函數(shù)定義的要轉(zhuǎn)入的值或者變量,大括號定義了函數(shù)的開始和結(jié)束注意:無參函數(shù)必須在后邊加括號語法:function test()要執(zhí)行的程序(3) return 語句Return語句用來規(guī)定函數(shù)返回的值,因此,需要返回某個值的函數(shù)必須使用
16、這個return語句語法:function prod(a,b)X=a*b;Return x;所以,當(dāng)您調(diào)用prod函數(shù)的時候需要傳入 ab兩個參數(shù)值(4) javascript變量的生存周期。當(dāng)您在函數(shù)內(nèi)聲明了一個變量后,就只能在該函數(shù)中訪問該變量。當(dāng)退岀該函數(shù)后,這個 變量會被撤銷。這種變量稱為本地變量。您可以在不同的函數(shù)中使用名稱相同的本地變量,這是因為只有 聲明過變量的函數(shù)能夠識別其中的每個變量。如果您在函數(shù)之外聲明了一個變量,則頁面上的所有函數(shù)都可以訪問該變量。這些變量的生存期從聲明它 們之后開始,在頁面關(guān)閉時結(jié)束。循環(huán)遍歷: (1)for循環(huán):將一段代碼循環(huán)執(zhí)行指定的次數(shù)。語法:fo
17、r(變量=開始值;變量 =結(jié)束值;變量=變量+進步值)需執(zhí)行的代碼實例:下面的例子定義了一個循環(huán)程序,這個程序中i的起始值為0。每執(zhí)行一次循環(huán),i的值就會累加一次1,循環(huán)會一直運行下去,直到i等于10為止。For(var i=0;i10;i+)Document.write(Document.write(The number is +i);”);v/scriptv/body結(jié)果:The number is 0The number is1The number is 2The number is 3The number is 4The number is 5The number is 6The nu
18、mber is 7The number is 8The number is 9(2 ) while循環(huán):當(dāng)指定條件為true時循環(huán)執(zhí)行代碼。語法:while(變量 =結(jié)束值)需要執(zhí)行的代碼實例:while(i10)Document.write(The number is+i);Document.write( ”);結(jié)果:The number is 0The number is1The number is 2The number is 3The number is 5The number is 6The number is 7The number is 8The number is 9(3) d
19、owhile循環(huán)語法:do.while 循環(huán)是 while 循環(huán)的變種。該循環(huán)程序在初次運行 時會首先執(zhí)行一遍其中的代碼,然后當(dāng)指定的條件為true時,它會繼續(xù)這個循環(huán)。所以可以這么說,do.while循環(huán)為執(zhí)行至少一遍其中的代碼,即使條件為false,因為其中的代碼執(zhí)行后才會進行條件驗證。語法:do需執(zhí)行的代碼while( 變量 =結(jié)束值)案例:vscript type= text/javascriptVar i=0;doDocument.write(The number is+i);Document.write( ”;while(i=1)結(jié)果:The number is 0;The num
20、ber is 1;(4) break語句詳解。Var i=0;For(i:i=10;i+)lf(i=3)Break;Document.write(The number is+i);Document.write( ”;v/scriptv/body結(jié)果:The number is 0;The number is 1;The number is 2;(5) continue 語句詳解:continue命令會終止當(dāng)前的循環(huán),然后從下一個值繼續(xù)運行。案例:vscript type= text/javascript Var i=0;For(i:i=5;i+)lf(i=3)continue;Document
21、.write(The number is+i);Document.write( ”;The number is 1;The number is 2;The number is 4;The number is 5;(6) for in循環(huán)詳解:聲明用于對數(shù)組或者對象的屬性進行循環(huán)操作,循環(huán)中的代碼每執(zhí)行一次,就會對數(shù)組或者對象的屬性進行一次操作。語法:for(變量in對象)在此執(zhí)行代碼實例:vscript type=text/javascriptVar x;Var listtest=new AyyayList();ListttestO=”a”;Listttest1=b ”;Listttest2=
22、”c;For(x in listtest)Document.write(listtestx+”;事件: (1)事件是可以被javascript偵測到的行為。網(wǎng)頁中的每個元素都可以產(chǎn)生某些可以觸發(fā) JavaScript函數(shù)的事件。比方說,我們可以在用戶點擊某按鈕時產(chǎn)生一個onClick事件來觸發(fā)某個函數(shù)。事件在HTML頁面中定義。事件舉例:?鼠標點擊?頁面或圖像載入鼠標懸浮于頁面的某個熱點之上在表單中選取輸入框確認表單鍵盤按鍵注意:事件通常與函數(shù)配合使用,當(dāng)事件發(fā)生時函數(shù)才會執(zhí)行(2 )常用事件案例。案例1: onFouces,onBlur 和onChange 這三個事件通常相互配合來驗證表單|
23、下面是一個使用onChange 事件的例子。用戶一旦改變了域的內(nèi)容,checkMail() 函數(shù)就會被調(diào)用vinput type= text ” size= 30 ” onChange= checkMail()”案例2: onSubmit用于提交表單之前驗證表單域 ,下面是一個使用 onSubmit 事件的例子。當(dāng)用戶單擊表單中的確認按鈕時,checkForm() 函數(shù)就會被調(diào)用。假若域的值無效,此次提交就會被取消。checkForm() 函數(shù)的返回值是true 或者false。如果返回值為true,則提交表單,反之取消提交。vfrom method= post action= xxx.htm
24、l Onsubmit= return checkFrom() ”案例 3 : onMouseOver 和 onMouseOut :onMouseOver 和onMouseOut 用來創(chuàng)建動態(tài)的按鈕下面是一個使用 onMouseOver事件的例子。當(dāng) onMouseOver事件被腳本偵測到時,就會彈岀一個警告框:異常捕獲:(1 )異常捕獲類型。使用Try.catch.異常捕獲(主要適用于ie5以上內(nèi)核的瀏覽器,也是最床用的異常捕 獲方式)使用onerror事件異常捕獲,這種捕獲方式是比較古老的一種方式,目前一些主流的瀏覽器暫不支持本文基于失效開發(fā)的前提,所以這個地方只講解trycatch異常捕獲
25、,有興趣的同學(xué)可以自己找找onerror事件的捕獲方式(2) try.catch.異常捕獲詳解:try部分包含要運行的代碼,catch部分包含錯誤運 行時要執(zhí)行的代碼。語法:try/在此執(zhí)行的代碼catch(err)/在此處理錯誤的代碼案例:下面一個例子,由于誤寫了alert(),所以錯誤發(fā)生了。不過這一次,catch部分捕獲到了錯誤,并用一段準備好的代碼來處理這個錯誤。這段代碼會顯示一個自定義的岀錯信息來告知用 戶所發(fā)生的事情。vscript type= text/javascriptFunction test()TryAlerrtt( welcome dear ”;catch(err)Al
26、ert(此頁面出現(xiàn)了一個錯誤,描述: +err .description);vinput type=button value= click me onClick= test()”特殊字符:(1 )在javascript中我們經(jīng)常使用反斜杠來插入一些特殊字符,比如在文本字符串中插入省略號、換行符、引號和其他特殊字符。案例:var txt= what are you going to do?;Alert( tXt ”);輸出: what are you going如何解決這樣的問題呢?要解決這個問題,就必須把在to中的引號前面加上反斜杠()。這樣就可以把每個雙引號轉(zhuǎn)換為字面上的字符串。案例:var
27、 txt= ”“” do?Alert( fXt ”);輸出: what are you goingto ” do?(2)特殊字符的插入是非常簡單易懂的,下邊這些特殊字符也都可以使用反斜杠添加到文本字符串中。單引號雙引號&和號反斜杠n換行符r回車符t制表符b退格符f換頁符以上就是javascript基本用法的相關(guān)知識點,還是非常簡單的吧,相信同學(xué)們,看到這里大家一定感慨原來javascript是這么簡單啊,那么首先,我要先恭喜各位,已經(jīng)正式進入 javascript 編程,但是,我同時也要告訴大家,這是進入javascript編程的基本語法,換句話說,我們還沒有進入邏輯語法,高級javascri
28、pt以及對象,圖像的處理。不過大家不用著急,本教程寫到這里是希望大家把基礎(chǔ)掌握熟練了,這對我們接下來的研究很有幫助。謝謝。Javascript 對象篇對象簡介:(1)javascript是面向?qū)ο蟮木幊陶Z言(oop ),對象有自己的屬相和方法。字符串對象: (1)屬性:屬性指與客戶有關(guān)的值。在下面的例子中,我們使用字符串對象的長度屬性來計算字符串中的字符數(shù)目。案例: vscript type= ” text/javascript”Var txt= contratulations”;Document.write(txt .l ength);輸岀:15(2)方法:方法指對象可以完成的行為或者功能。
29、在下面的例子中,我們使用字符串對象的toUpperCase()方法來顯示大寫字母文本。案例: vscript type=text/javascript”Var txt= contratulations ”Document.write(txt.toUpperCase();輸出:CONTRATULATIONS日期對象:(1 )日期的定義。注意:Date對象自動使用當(dāng)前的日期和時間作為其初始值。(2) 日期對象的操作。在下面的例子中,我們?yōu)槿掌趯ο笤O(shè)置了一個特定的日期(2012 年2月2日):案例 1 : var mydate=new Date();Mydate=setFullYear(2012,1
30、,2);注意:表示月份的參數(shù)介于0到11之間。也就是說,如果希望把月設(shè)置為 2月,則參數(shù)應(yīng)該是1。在下面的例子中,我們將日期對象設(shè)置為5天后的日期:案例 2 : var mydate=new Date();Mydate.setDate(mydate.getDte()+5);注意:如果增加天數(shù)會改變月份或者年份,那么日期對象會自動完成這種轉(zhuǎn)換(3) 比較日期。日期對象也可用于比較兩個日期。下面的代碼將當(dāng)前日期與 2012年2月2日做了比較:Var mydate=new Date();Mydate.setFullDate(2012,1,2);Var today=new Date();lf(toda
31、ymydate)Alert( today is +today);elseAlert( today is +mydate);數(shù)組對象:(1 )數(shù)組的定義和賦值:數(shù)組對象用來在單獨的變量名中存儲一系列的值。的數(shù)組對我們使用關(guān)鍵詞new來創(chuàng)建數(shù)組對象。下面的代碼定義了一個名為myArray象:Var myarray=new Array();有兩種向數(shù)組賦值的方法(你可以添加任意多的值,就像你可以定義你需要的任意多的變 量一樣)。|第一種方式:Var mycars=new Ayyar();Mycars0=Saab ”;Mycars1=Volvo ”;Mycars2=BMW ;也可以使用一個整數(shù)自變量來
32、控制數(shù)組的容量:Var mycars=new Ayyar(3);Mycars0=Saab ;Mycars1=Volvo ;Mycars2=BMW ;第二種方式:Var mycars=new Ayyar( Saab , Volvo ,BMW );注意:如果你需要在數(shù)組內(nèi)指定數(shù)值或者邏輯值,那么變量類型應(yīng)該是數(shù)值變量或者布爾 變量,而不是字符變量。|(2) 訪問數(shù)組。通過指定數(shù)組名以及索引號碼,你可以訪問某個特定的元素。案例:document.write(mycars1);輸出:Volvo;(3) 修改已有數(shù)組中的值。只要向指定下標號添加一個新值即可:MycarsO=Opel ”;輸出 docum
33、ent.write(mycars0);Opel;邏輯對象:(1)創(chuàng)建Boolean 對象Boolean(邏輯)對象用于將非邏輯值轉(zhuǎn)換為邏輯值( true或者false )的邏或者使用關(guān)鍵詞 new 來定義Boolean 對象。下面的代碼定義了一個名為myBoolean輯對象:Var myboolean=new Boolean。;注意:如果邏輯對象無初始值或者其值為0、-0、null、false、undefinedNaN,那么對象的值為false。否則,其值為true (即使當(dāng)自變量為字符串false 時)!下面的所有的代碼行均會創(chuàng)建初始值為false的Boolean 對象。var myBool
34、ean=new Boolean();var myBoolean=new Boolean(0);var myBoolean=new Boolean(“”;var myBoolean=new Boolean(null);var myBoolean=new Boolean(false);var myBoolean=new Boolean(NaN);下面的所有的代碼行均會創(chuàng)建初始值為false的Boolean 對象。var myBoolean=new Boolean(1);var myBoolean=new Boolean(true);var myBoolean=new Boolean(true ”)
35、;var myBoolean=new Boolean(false ”);算數(shù)對象:(1)算數(shù)值。Math (算數(shù))對象的作用是:執(zhí)行普通的算數(shù)任務(wù)。Math對象提供多種算數(shù)值類型和函數(shù)。無需在使用這個對象之前對它進行定義。JavaScript 提供8種可被Math對象訪問的算數(shù)值:10的自然對數(shù)以2為底的e的對數(shù)以10為底的e的對數(shù)這是在Javascript中使用這些值的方法:(與上面的算數(shù)值一一對應(yīng))Math.EMath.PIMath.SQRT2Math.SQRT1_2Math.LN2Math.LN10Math.L0G2EMath.LOG10E(2)算數(shù)方法。除了可被 Math對象訪問的算數(shù)
36、值以外,還有幾個函數(shù)(方法)可以使用。實例1 :下面的例子使用了Math對象的round 方法對一個數(shù)進行四舍五入Document.write(Math.round(4.7);輸岀:5;實例2 :下面的例子使用了Math對象的random()方法來返回一個介于0和1之間的隨機數(shù):Document.write(Math.random();輸出:0.12212xxxxx( 或者0-1之間的任何小數(shù));實例3 :下面的例子使用了Math 對象的floor() 方法和random() 來返回一個介于0和10之間的隨機數(shù):Document.write(Math.floor(Math.random()*1
37、1);輸岀:8(或者0-10之間的任意整數(shù));正則表達式對象:(1 )定義 RegExp。RegExp對象用于存儲檢索模式。來定義RegExp對象。以下代碼定義了名為patt1 的RegExp對象,其模式是e:Var myreg=new RegExp(“ ”);當(dāng)您使用該RegExp對象在一個字符串中檢索時,將尋找的是字符e。(2) RegExp對象的方法。RegExp 對象有三種方法 test(),exec() 以及 complie()。Test():檢索字符串中的指定值。返回值是true 或false。案例: Var myreg=new RegExp(e ”;Document.write(
38、myreg.test(this is a test example!);由于上邊已經(jīng)定義檢索字符是 e ”所以這個地方的輸岀:true;Exec():檢索字符串中的指定值。返回值是被找到的值。如果沒有發(fā)現(xiàn)匹配,則返回null 。案例: Var myreg=new RegExp(e ”;Document.write(myreg.exec(this is a test example! );由于上邊已經(jīng)定義檢索字符是” e ”并且檢索字符串中存在” e,所以這個地方的輸岀:e 擴展學(xué)習(xí):您可以向RegExp對象添加第二個參數(shù),以設(shè)定檢索。例如,如果需要找到所有某個字符的所有存在,則可以使用g參數(shù)(
39、global)。在使用g參數(shù)時,exec()的工作原理如下:? 找到第一個e,并存儲其位置?如果再次運行exec(),則從存儲的位置開始檢索,并找到下一個e,并存儲其位置案例: Var myreg=new RegExp(e ” g”);DoResult=myreg.exec( this is a test example ); Document.write(result);while(result!=null)由于這個字符串中3個e字母,代碼的輸出將是:eeenull;Compile。:既可以改變檢索模式,也可以添加或刪除第二個參數(shù)。案例: Var myreg=new RegExp(e ”;D
40、ocument.write(myreg.exec(this is a test example! );Var myreg=new RegExp(d ”);Document.write(pile(this is a test example! );由于字符串中存在e,而沒有d,以上代碼的輸出是:truefalse;以上就是javascript的基礎(chǔ)對象篇,那么學(xué)到這里,大家是否能完全掌握了呢?當(dāng)然,我木有完全的把所有相關(guān)的對象都列舉岀來,那也是不現(xiàn)實的,編寫此教程的目的在于培養(yǎng)大家的編碼思想,對象的屬性和方法等知識點其實也難死記硬背的,所以只要你掌握了編碼的思想,你就可以舉一反三,根據(jù)客戶的需求
41、,查相關(guān)的幫助文檔,我希望大家把這一篇的知識好好的鞏固和學(xué)習(xí)一下,下一篇我們將深入javascript 高級研究。Javascript 高級瀏覽器檢測: (1)概念描述本教程中幾乎所有的代碼均可在任何支持JavaScript的瀏覽器中運行。不過個別的代碼無法運行于特定的瀏覽器,特別是老式的瀏覽器。所以,有些時候?qū)υL問者的瀏覽器類型及版本進行檢測是很有幫助的,然后可在此基礎(chǔ)上為訪問者提供合 適的信息。|要做到這一點,最好的辦法是使你的網(wǎng)頁變得足夠聰明,這樣的話它就可以不同的方式對待不同類型的瀏 覽器。|JavaScript包含一個名為Navigator的對象,它就可以完成上述的任務(wù)。Naviga
42、tor包含了有關(guān)訪問者瀏覽器的信息,包括瀏覽器類型、版本等等(2)Navigator 對象詳解AppName:保存瀏覽器類型AppVersion:保存瀏覽器的版本信息實例 1 : Var browser= navigator.appname;Var messversion= navigator.appVersion;Var version=parseFloat(messversion);Document.write( browser name + browser+ ”;Document.write( browser versionversion);上面例子中的 browser變量存有瀏覽器的名
43、稱,比如, Netscape 或者MicrosoftInternet Explorer 。上面例子中的 appVersion 屬性返回的字符串所包含的信息不止是版本號而已,但是現(xiàn)在我們只關(guān)注版本號。我們使用一個名為parseFloat() 的函數(shù)會抽取字符串中類似十進制數(shù)的|一段字符并將之返回,這樣我們就可以從字符串中抽岀版本號信息了。重要事項:在IE 5.0 及以后版本中,版本號是不正確的!在 IE 5.0 和IE 6.0 中, 微軟為appVersion字符串賦的值是 4.0。怎么會出現(xiàn)這樣的錯誤呢?無論如何,我們需要清楚的是,JavaScript 在IE6、IE5 和IE4 中的獲得的版
44、本號是相同的。下面的腳本會根據(jù)訪問者的瀏覽器類型顯示不同的警告。實例 2 : Function test()Var browser= navigator.appname;Var messversion= navigator.appVersion;Var version=parseFloat(messversion);lf(browser= w Netscape ” browser= w InternetExplorer &version=4)Alert( Your browser is good enough!”;elseAlert( It is time to upgrade your br
45、owser!”;v/scriptv/bodyCookies :(1)什么是 cookie ?cookie是存儲于訪問者的計算機中的變量。每當(dāng)同一臺計算機通過瀏覽器請求某個頁面時,就會發(fā)送這個 cookie。你可以使用 JavaScript來創(chuàng)建和取回cookie 的值。J(2)cookie的使用范圍名字cookie :當(dāng)訪問者首次訪問頁面時,他或她也許會填寫他/她們的名字。名字會存儲于cookie 中。當(dāng)訪問者再次訪問網(wǎng)站時,他們會收到類似Welcome John Doe! 的歡迎詞。而名字則是從cookie中取回的。密碼cookie :當(dāng)訪問者首次訪問頁面時,他或她也許會填寫他/她們的密碼。密碼也可被存儲于cookie中。當(dāng)他們再次訪問網(wǎng)站時,密碼就會從cookie中取回。日期cookie :當(dāng)訪問者首次訪問你的網(wǎng)站時,當(dāng)前的日期可存儲于cookie 中。當(dāng)他們再次訪問網(wǎng)站時,他們會收到類似這樣的一條消息:Your last visit was on Tuesday |August 11,2005!。日期也是從 cookie 中取回的。(3)創(chuàng)建和存儲 cookie在這個例子中我們要創(chuàng)建一個存儲訪問者名字的cookie。當(dāng)訪問者首次訪問網(wǎng)站時,他們會被要求填寫姓名。名字會存儲于cookie中。當(dāng)訪問者再次訪問網(wǎng)站時,他們就會收到歡迎詞。首先,我們會創(chuàng)建一個可在
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 畜牧業(yè)設(shè)備采購核準表
- 航空會員賬戶管理辦法
- 2025年度水利工程項目承包合伙合同3篇
- 科技園區(qū)房產(chǎn)交易合同
- 建筑工程項目擔(dān)保細則
- 醫(yī)療設(shè)備招議標管理辦法
- 國際石油勘探招投標詳解
- 翻譯服務(wù)業(yè)機構(gòu)裝飾施工合同
- 長途客運司機招聘合同樣本
- 智能化煤礦配件管理未來趨勢
- 天津市西青區(qū)2023-2024學(xué)年八年級上學(xué)期期末數(shù)學(xué)達標卷(含答案)
- 社會心理學(xué)理論考試試題及答案
- 國開2023秋《電子商務(wù)概論》實踐任務(wù)B2B電子商務(wù)網(wǎng)站調(diào)研報告參考答案
- 國家開放大學(xué)《個人理財》形考任務(wù)1-4
- 【瑞幸咖啡財務(wù)分析報告(附財務(wù)報表)5300字(論文)】
- 過敏性鼻炎-疾病研究白皮書
- 三軸水泥攪拌樁施工質(zhì)量措施
- 幼兒園學(xué)前教育五以內(nèi)的數(shù)字比大小練習(xí)題
- 垃圾自動分揀機構(gòu)plc控制畢業(yè)論文
- 中國省市行政代碼表
- JTG D70-2-2014 公路隧道設(shè)計規(guī)范 第二冊 交通工程與附屬設(shè)施正式版
評論
0/150
提交評論