版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
JavaScript簡(jiǎn)介JavaScript了解什么是腳本程序和JavaScriptJavaScript的基本語(yǔ)法運(yùn)算符程序的流程控制函數(shù)對(duì)象JavaScript的內(nèi)部對(duì)象專門用于對(duì)象的語(yǔ)句數(shù)組什么是JavaScriptSwissBank
Florida,USAdollar’11’00’89’778“678900590”$一萬(wàn)元整JenySmissJ.Smiss..10,000/-JenySmissA/cNo.010077瑞士銀行Jeny想在銀行存錢驗(yàn)證Jeny帳戶詳細(xì)信息
余額帳號(hào)
簽名帳戶驗(yàn)證完畢什么是JavaScript同樣,JenyJeny想創(chuàng)建一個(gè)電子郵件帳戶Jeny@***24US帳戶Id:密碼:年齡:國(guó)家:提交提交******請(qǐng)等待,正在創(chuàng)建您的帳戶OK提交提交這樣,JavaScript將驗(yàn)證數(shù)據(jù)并給出錯(cuò)誤信息(如有)錯(cuò)誤消息密碼不能少于六位!JavaScript簡(jiǎn)介JavaScript簡(jiǎn)介前身叫作LiveScript,是一種基于對(duì)象(Object)和事件驅(qū)動(dòng)(EventDriven)、并具有安全性能的腳本語(yǔ)言。JavaScript與Java是兩個(gè)公司開發(fā)的兩個(gè)不同的產(chǎn)品,作用與用途大不一樣,但兩者語(yǔ)法上有很多多相似之處,JavaScript并不是Java的子集。JavaScript、Jscript與ECMAScript什么是JavaScriptJavaScript是一種腳本語(yǔ)言<html><scriptlanguage=“javascript”>alert(newDate());</script></html>提供用戶交互
動(dòng)態(tài)更改內(nèi)容數(shù)據(jù)驗(yàn)證將JavaScript嵌入網(wǎng)頁(yè)可以將JavaScript語(yǔ)句插入HTML文檔,方式如下:使用<SCRIPT>標(biāo)簽將語(yǔ)句嵌入文檔將JavaScript源文件鏈接到HTML文檔中使用Script標(biāo)簽JavaScript代碼<HTML><HEAD><SCRIPTlanguage="JavaScript">document.write("歡迎來(lái)到JavaScript世界");</SCRIPT></HEAD><BODY><P>盡情享受學(xué)習(xí)的快樂!!!</BODY></HTML>腳本代碼設(shè)置語(yǔ)言腳本代碼的位置JavaScript代碼可以放置在HTML任何位置<script>varx=3;</script><p>這是一個(gè)HTML段落</p><script>alert(x);</script><p>這是一個(gè)HTML段落</p><script>varx=3;alert(x);</script><scriptlanguang=“javascript”><!— alert(newdate());--></script>將腳本程序代碼作為屬性值<ahref=“javascript:alert(newDate());”>javascript</a><inputtype=buttononclick=“alert(newDate())”value=t/>使用外部JS文件外部JavaScript文件(*.js)可以鏈接到HTML文檔中SCRIPT標(biāo)簽的SRC(源文件)屬性可用于包括此外部文件<scriptlanguage=“JavaScript”src=“文件名.js"></script>
使用外部JS文件JavaScript代碼(test.htm)<HTML><HEAD><TITLE>使用外部文件</TITLE><SCRIPTSRC="test.js"></SCRIPT></HEAD><BODY><P>以上文本是通過訪問外部JavaScript文件顯示的</BODY></HTML>document.write("喂!你好嗎?")JavaScript代碼(test.js)JavaScript的基本語(yǔ)法JavaScript中的標(biāo)識(shí)符標(biāo)識(shí)符是指JavaScript中定義的符號(hào),例如,變量名,函數(shù)名,數(shù)組名等。標(biāo)識(shí)符可以由任意順序的大小寫字母、數(shù)字、下劃線(_)和美元符號(hào)($)組成,但標(biāo)識(shí)符不能以數(shù)字開頭,不能是JavaScript中的保留關(guān)鍵字。合法的標(biāo)識(shí)符舉例:indentifler、username、user_name、_userName、$username非法的標(biāo)識(shí)符舉例:int、98.3、HelloWorldJavaScript嚴(yán)格區(qū)分大小寫computer和Computer是兩個(gè)完全不同的符號(hào)JavaScript程序代碼的格式每條功能執(zhí)行語(yǔ)句的最后必須用分號(hào)(;)結(jié)束,每個(gè)詞之間用空格、制表符、換行符或大括號(hào)、小括號(hào)這樣的分隔符隔開。JavaScript程序的注釋/*…….*/中可以嵌套“//”注釋,但不能嵌套“/*….*/”JavaScript中保留的關(guān)鍵字abstractbooleanbreakbytecasecatchcharclasscontinuedefaultifforfloatfinallyfinalfalseextendselsedoubledoimplementsimportinstanceintinterfacelongnativenewnullbackagethissynchronizedswitchsuperstaticshortreturnpublicprotectedprivatethrowthrowstransienttruetryvoidvolatilewhile基本數(shù)據(jù)類型與常量整型常量十六進(jìn)制以0x或0X開頭,例如0x8a。八進(jìn)制必須以0開頭,例如:0123。十進(jìn)制的第一位不能是0(數(shù)字0除外),例如:123。實(shí)型常量12.32、192.98、5E7、4e5等。布爾值true和false.null常量undefined常量字符串型常量“thisisJavaScriptppt”、’abc’、“a”、“”。字符串中的特殊字符,需要以反斜杠(\)后跟一個(gè)普通字符來(lái)表示,例如:\r、\n、\t、\b、\’、\”、\\.聲明變量vara;
“var”-用于聲明變量的關(guān)鍵字“a”-變量名同時(shí)聲明和初始化變量vara=10;a=10;聲明變量聲明多個(gè)變量varx,y,z=10;賦值聲明變量<HTML><HEAD><TITLE>使用變量</TITLE><SCRIPTLANGUAGE="Javascript">varx;x=prompt("淘寶網(wǎng)竟拍,請(qǐng)出一口價(jià)",1);document.write("拍賣價(jià)格"+x+"<BR>")//"+"用來(lái)連接多個(gè)字符串document.write("恭喜您,您以最高價(jià)拍賣成功!");alert("歡迎下次光臨!");</SCRIPT></HEAD></HTML>定義變量賦值輸出prompt(“提示信息”,”默認(rèn)值”)將彈出提示對(duì)話框,接受用戶的輸入。點(diǎn)擊確定返回輸入的字符串,點(diǎn)擊取消反饋空字符串。運(yùn)算符算術(shù)運(yùn)算符賦值運(yùn)算符比較運(yùn)算符邏輯運(yùn)算符位運(yùn)算符算術(shù)運(yùn)算符+
加法運(yùn)算符或正值運(yùn)算符,例如:x+5,+6?!?”還能實(shí)現(xiàn)多個(gè)字符串的相加,也能將字符串與其它的數(shù)據(jù)類型連成一個(gè)新的字符串,條件是該表達(dá)式中至少有一個(gè)字符串,例如:“x”+123的結(jié)果是“x123”.-
減法運(yùn)算符或負(fù)值運(yùn)算符,例如:7–3,-8.*
乘法運(yùn)算符,例如:3*6./
除法運(yùn)算符,例如,9/4.%
求模運(yùn)算符(也就算術(shù)中的求余)5/2.++
將變量值加1后再將結(jié)果賦給這個(gè)變量?!埃庇袃煞N用法:++x,x++. 1。前者是變量在參與其它運(yùn)算之前先將自己加1后再用新的 值參與其它的運(yùn)算。例如:b=++a是a先自增,即a的值 加1后,才賦值給b; 2。后者是先用原值參與其它運(yùn)算后,再將自己加1,例如: b=a++是先將a賦值給b后,a再自增。--將變量值減1后再將結(jié)果賦給這個(gè)變量,與++的用法一樣。<HTML><HEAD><SCRIPTLANGUAGE="JavaScript">varx=100;vary;varz;document.write("<H2>競(jìng)拍SONY數(shù)碼相機(jī)600萬(wàn)像素"+x+"$起價(jià)</H2>");y=prompt("加多少銀子?","1");z=x+y;alert("您最終的出價(jià)\n"+z+"$");//”\n”用于換行顯示</SCRIPT></HEAD><body></body></HTML>Prompt函數(shù)返回輸入的字符串10020
?bug+字符串相連:100+”200”200<HTML><HEAD><SCRIPTLANGUAGE="JavaScript">varx=100;vary;varz;document.write("<H2>競(jìng)拍SONY數(shù)碼相機(jī)600萬(wàn)像素"+x+"$起價(jià)</H2>");y=prompt("加多少銀子?","1");z=x+parseFloat(y);alert("您最終的出價(jià)\n"+z+"$");//”\n”用于換行顯示</SCRIPT></HEAD><body></body></HTML>parseFloat()函數(shù)將字符串轉(zhuǎn)換為float數(shù)據(jù)
parseInt()函數(shù)將字符串轉(zhuǎn)換為int數(shù)據(jù)如果轉(zhuǎn)換失敗,返回NaN值(notanumber)賦值運(yùn)算符賦值運(yùn)算符的作用是將一個(gè)值賦給一個(gè)變量,最常用的賦值運(yùn)算符是“=”。還可以由“=”賦值運(yùn)算符和其它一些運(yùn)算符組合產(chǎn)生一些新的賦值運(yùn)算符,例如,“+=”,”*=”等。=
將一個(gè)值或表達(dá)式的結(jié)果賦給變量例如:x=3;+=
將變量與所賦的值相加后的結(jié)果再賦給該變量例如:x+=3等價(jià)于x=x+3;-=
將變量與所賦的值相減后的結(jié)果再賦給該變量例如:x-=3等價(jià)于x=x–3;*=
將變量與所賦的值相乘后的結(jié)果再賦給該變量例如:x*=3等價(jià)于x=x*3;/=
將變量與所賦的值相除后的結(jié)果再賦給該變量例如:x/=3等價(jià)于x=x/3;%=
將變量與所賦的值求模后的結(jié)果再賦給該變量例如:x%=3等價(jià)于x=x%3;比較運(yùn)算符>
當(dāng)左邊操作數(shù)大于右邊操作數(shù)時(shí)返回true,否則返回false.<
當(dāng)左邊操作數(shù)小于右邊操作數(shù)時(shí)返回true,否則返回false.>=
當(dāng)左邊操作數(shù)大于等于右邊操作數(shù)時(shí)返回true,否則返回false.<=
當(dāng)左邊操作數(shù)小于等于右邊操作數(shù)時(shí)返回true,否則返回false.==
當(dāng)左邊操作數(shù)等于右邊操作數(shù)時(shí)返回true,否則返回false.!=
當(dāng)左邊操作數(shù)不等于右邊操作數(shù)時(shí)返回true,否則返回false.注意:不要將比較運(yùn)算符“==”誤寫成“=”。邏輯運(yùn)算符&&邏輯與,當(dāng)左右兩邊操作數(shù)都為true時(shí),返回true,否則返回false.||邏輯或,當(dāng)左右兩邊操作數(shù)都為false時(shí),返回false,否則返回true.!邏輯非,當(dāng)操作數(shù)為true時(shí)返回false,否則返回true.位運(yùn)算符任何信息在計(jì)算機(jī)中都是以二進(jìn)制的形式保存的,位運(yùn)算用于對(duì)操作數(shù)中的每一個(gè)二進(jìn)制位進(jìn)行運(yùn)算,包括位邏輯運(yùn)算符和位移運(yùn)算符。&
只有參加運(yùn)算的兩位都為1,運(yùn)算的結(jié)果才為1,否則為0.|
只有參加運(yùn)算的兩位都為0,運(yùn)算的結(jié)果才為0,否則為1.^
只有參加運(yùn)算的兩位不同,運(yùn)算的結(jié)果才為1,否則為0.>>
將左邊的操作數(shù)在內(nèi)存中的二進(jìn)制數(shù)據(jù)右移右邊操作數(shù)指定的位數(shù),左邊移空的部分,補(bǔ)上左邊操作數(shù)原來(lái)的最高位的二進(jìn)制位值。<<
將左邊操作數(shù)在內(nèi)存中的二進(jìn)制數(shù)據(jù)左移右邊操作數(shù)指定的位數(shù),右邊移空的部分補(bǔ)0。>>>
將左邊操作數(shù)在內(nèi)存中的二進(jìn)制數(shù)據(jù)右移右邊操作數(shù)指定的位數(shù),左邊移空的部分補(bǔ)0。程序的流程控制順序結(jié)構(gòu)if條件選擇語(yǔ)句switch選擇語(yǔ)句while循環(huán)語(yǔ)句dowhile語(yǔ)句for循環(huán)語(yǔ)句break與continue語(yǔ)句if條件選擇語(yǔ)句1、if(條件語(yǔ)句){
執(zhí)行語(yǔ)句;} if(x==null)或if(typeof(x)==“undefined”)可以簡(jiǎn)寫成if(!x).2、if(條件語(yǔ)句)
{
執(zhí)行語(yǔ)句塊1;}else{
執(zhí)行語(yǔ)句2;}三目運(yùn)算符:變量=布爾表達(dá)式?語(yǔ)句1:語(yǔ)句2;例如:y=x>0?x:-x;舉例:如果購(gòu)買金額大于1000,將給與95折的折扣if條件選擇語(yǔ)句3、if(條件語(yǔ)句1){
執(zhí)行語(yǔ)句1;}elseif(條件語(yǔ)句2){
執(zhí)行語(yǔ)句2;}…………elseif(條件語(yǔ)句n){
執(zhí)行語(yǔ)句n;} else{
執(zhí)行語(yǔ)句n+1;}if語(yǔ)句的嵌套if(x<1){if(y==1)alert(“x<1,y==1”);elsealert(“x<1,y!=1”);}elseif(x>10){if(y==1)alert(“x>10,y==1”);elsealert(“x>10,y!=1”);}if練習(xí)制作一個(gè)考試成績(jī)自動(dòng)分級(jí)程序輸入學(xué)生考試成績(jī)90分以上,評(píng)定為“優(yōu)”75到90分,評(píng)定為“良”60到75分,評(píng)定為“中”60分以下,評(píng)定為“差”switch選擇語(yǔ)句switch(表達(dá)式){case取值1:語(yǔ)句塊1;break;case取值2:語(yǔ)句塊2;break;………….case取值n:語(yǔ)句塊n;break;defaule:語(yǔ)句塊n+1;break;}varx=2;switch(x){ case1: alert(“monday”); break;case2: alert(“Tuesday”); break;case3:alert(“wendnesday”); break;default:alert(“sorry,Idon’tknow”);}case1:case2:case3:case4:case5:alert(“workingday”);break;default:alert(“offday”);switch練習(xí)獲取指定月份的天數(shù)根據(jù)用戶輸入月份返回當(dāng)月天數(shù)例如輸入1月給用戶返回1月為31天while循環(huán)語(yǔ)句while(條件表達(dá)式語(yǔ)句){
執(zhí)行語(yǔ)句塊;}varx=1;while(x<3)//如果這里加上分號(hào)會(huì)怎樣呢?{alert(“x=”+x);x++;}dowhile語(yǔ)句do{
執(zhí)行語(yǔ)句塊;}while(條件表達(dá)式語(yǔ)句);//注意這里的分號(hào)<HEAD><STYLEtype="text/css">.myfont{font-size:150;color:#c99c96;font-family:Webdings//產(chǎn)生埃及圖像的特殊字體}</STYLE><scriptlanguage="JavaScript">document.write("<H3>每個(gè)字符都對(duì)應(yīng)一個(gè)漂亮的埃及圖像</H3>");do{varc=prompt("輸入一個(gè)字符,輸入N或n停止","A");document.write("<fontclass=myfont>"+c+"</font>");}while(c!="N"&&c!="n");</SCRIPT></HEAD>while循環(huán)
while(循環(huán)條件){//語(yǔ)句;
}do-while循環(huán)
do{//語(yǔ)句;
}while(循環(huán)條件);while和do-while循環(huán)先執(zhí)行,后判斷循環(huán)條件輸入一個(gè)字符,直到N停止,用哪個(gè)循環(huán)font-family:Webdingsfor循環(huán)語(yǔ)句for(初始化表達(dá)式;循環(huán)條件表達(dá)式;循環(huán)后的操作表達(dá)式){
執(zhí)行語(yǔ)句塊;}<scriptlanguage=“javascript”>varoutput=“”;for(varx=1;x<10;x++){output=output+“x=”+x;}alert(output);</script><HTML><HEAD><TITLE>For循環(huán)演示</TITLE><SCRIPTLANGUAGE="JavaScript">document.write("<H2align=center>打印金字塔直線</H2>");for(vari=0;i<100;i=i+5)document.write("<HRalign=centerwidth="+i+"%>");</SCRIPT></HEAD><BODY></BODY></HTML>for循環(huán)例:vari;for(i=0;i<10;i++){//語(yǔ)句;}for循環(huán)如何實(shí)現(xiàn)當(dāng)i=5時(shí),<HRalign=centerwidth=5%>break與continue語(yǔ)句break語(yǔ)句:st:while(true){ while(true) {
breakst; }}continue語(yǔ)句:varoutput=“”;for(varx=1;x<10;x++){
if(x%2==0) continue; output=output+”x=”+x;}alert(output);練習(xí)制作一個(gè)猜數(shù)游戲問題描述:猜數(shù)游戲。要求猜一個(gè)介于1~20之間的數(shù)字,根據(jù)用戶猜測(cè)的數(shù)與標(biāo)準(zhǔn)值進(jìn)行對(duì)比,并給出提示,以便下次猜測(cè)能接近標(biāo)準(zhǔn)值,直到猜中為止。
函數(shù)函數(shù)的作用與定義全局變量與局部變量參數(shù)個(gè)數(shù)可變的函數(shù)創(chuàng)建動(dòng)態(tài)函數(shù)JavaScript中的系統(tǒng)函數(shù)函數(shù)的作用。。。。。。。。。。函數(shù)1。。。。。。。。。。函數(shù)2。。。。。。。。。。函數(shù)1。。。。。。。。。。主程序。。。。。函數(shù)3。。。。。。。。。函數(shù)1。。。。。。。。。。。。函數(shù)2。。。。。。。。。。。。函數(shù)3函數(shù)的定義與調(diào)用定義一個(gè)函數(shù)的格式如下:function函數(shù)名(參數(shù)列表){
程序代碼:
return表達(dá)式;}對(duì)函數(shù)進(jìn)行調(diào)用的幾種方式:1.函數(shù)名(傳遞給函數(shù)的參數(shù)1,傳遞給函數(shù)的參數(shù)2,…)2.變量=函數(shù)名(傳遞給函數(shù)的參數(shù)1,傳遞給函數(shù)的參數(shù)2,…)3.對(duì)于有返回值的函數(shù)調(diào)用,也可以在程序中直接使用返回的結(jié)果,例如:alert(“sum=”+square(2,3));變量a、b和c只能在其各自的函數(shù)中被訪問變量的作用域腳本函數(shù)function1局部變量a函數(shù)function2局部變量b函數(shù)function3局部變量c可由函數(shù)1、函數(shù)2和函數(shù)3訪問全局變量gg全局變量不需要以var關(guān)鍵字進(jìn)行聲明,但局部變量則必須以此關(guān)鍵字來(lái)聲明全局變量與局部變量的比較<scriptlanguang=“javascript”>varmsg=“全局變量”;functionshow(){
//varmsg;msg=“局部變量”;}show();alert(msg);</script>結(jié)果是什么?<scriptlanguage=“javascript”>varmsg=“全局變量”;functionsquare(x,y){varsum;sum=x*x+y*y;returnsum;}functionshow(){varmsg=“局部變量”;alert(msg);}//varsum;alert(“sum”+sum);sum=square(2,3);alert(“sum=”+sum);show();</script>參數(shù)個(gè)數(shù)可變的函數(shù)<scriptlangusge=“javascript”>functiontestparams(){varparams=“”;for(vari=0;i<arguments.length;i++)params=params+””+arguments[i];alert(params);}testparams(“abc”,123);testparams(123,456,“abc”);</script>在函數(shù)內(nèi)部使用arguments對(duì)象來(lái)訪問調(diào)用程序傳遞的所有參數(shù)創(chuàng)建動(dòng)態(tài)函數(shù)創(chuàng)建動(dòng)態(tài)函數(shù)的基本語(yǔ)法格式:varvarName=newFunction(argument1,….,lastArgument);說明:所有的參數(shù)都必須是字符串型的,最后參數(shù)必須是這個(gè)動(dòng)態(tài)函數(shù)的功能代碼。例子:<scriptlanguage=“javascript”>varsquare=newFunction(“x”,“y”,“varsum;sum=x*x+y*y;returnsum;”);alert(square(3,2));</script>?多想一想:動(dòng)態(tài)函數(shù)有什么用,在什么情況下用動(dòng)態(tài)函數(shù);JavaScript函數(shù)內(nèi)置函數(shù)
eval
函數(shù):用于計(jì)算字符串表達(dá)式的值
isNaN函數(shù):用于驗(yàn)證參數(shù)是否為NaN(非數(shù)字)JavaScript代碼<SCRIPTLANGUAGE="JavaScript">varstr1=prompt(“輸入一個(gè)表達(dá)式,我給您計(jì)算","1+1");varresult=eval(str1);document.write(str1+"="+result);varx=prompt("輸入一些數(shù)據(jù)","0");if(isNaN(x))alert(x+"不是一個(gè)數(shù)字");elsealert(x+"是一個(gè)數(shù)字");</SCRIPT>其他Javascript中的內(nèi)置函數(shù)參照API對(duì)象對(duì)象與對(duì)象實(shí)例構(gòu)造方法與this關(guān)鍵字的作用在對(duì)象函數(shù)中變量作用域的問題JavaScript的內(nèi)部對(duì)象JavaScript對(duì)象簡(jiǎn)介對(duì)象是屬性和/方法的組合屬性是對(duì)象所擁有的一組外觀特征,一般為名詞方法是對(duì)象可以執(zhí)行的功能,一般為動(dòng)詞例如:汽車Ferrari對(duì)象:汽車屬性:型號(hào):法拉利顏色:綠色方法:前進(jìn)、剎車、倒車對(duì)象與對(duì)象實(shí)例對(duì)象中所包含的變量就是對(duì)象的屬性;對(duì)屬性進(jìn)行操作的函數(shù)就是對(duì)象的方法;對(duì)象的屬性和方法都叫對(duì)象的成員。對(duì)象是對(duì)某一類事物的描述,是抽象上的概念;而對(duì)象實(shí)例是一類事物中的具體個(gè)例。能夠被用來(lái)創(chuàng)建對(duì)象實(shí)例的函數(shù)就叫對(duì)象的構(gòu)造函數(shù),只要定義了一個(gè)對(duì)象的構(gòu)造函數(shù)就等于定義了一個(gè)對(duì)象,使用new關(guān)鍵字和對(duì)象的構(gòu)造函數(shù)就可以創(chuàng)建對(duì)象實(shí)例,語(yǔ)法格式如下:varobjInstance=newObjName(傳遞給該對(duì)象的實(shí)際參數(shù)列表);JavaScript對(duì)象簡(jiǎn)介三類對(duì)象
瀏覽器對(duì)象
內(nèi)部對(duì)象HTML對(duì)象瀏覽器窗口window文檔documenturl地址等String字符串對(duì)象Date日期對(duì)象Math數(shù)學(xué)對(duì)象等
各種HTML標(biāo)簽:段落<P>圖片<IMG>超鏈接<A>等<scriptlanguage=“javascript”>functionPerson()//構(gòu)造函數(shù){}varperson1=newPerson();//對(duì)象實(shí)例person1.age=18;//屬性=“zxx”;//可以為對(duì)象實(shí)例無(wú)限制的添加新成員//alert(+””+person1.age);functionsayFunc(){//用“對(duì)象實(shí)例名.成員名”的格式訪問,
//也可以使用(對(duì)象實(shí)例[“成員變量名”])的格式。
alert(+””+person1.age);}person1.say=sayFunc;person1.say();</script>構(gòu)造方法與this關(guān)鍵字為一個(gè)對(duì)象實(shí)例新增加的屬性和方法,不會(huì)增加到同一個(gè)對(duì)象所產(chǎn)生的其它對(duì)象實(shí)例上。所有的實(shí)例對(duì)象在創(chuàng)建后都會(huì)自動(dòng)調(diào)用構(gòu)造函數(shù),在構(gòu)造函數(shù)中增加的屬性和方法會(huì)被增加到每個(gè)對(duì)象實(shí)例上。對(duì)象實(shí)例是用new關(guān)鍵字創(chuàng)建的,在構(gòu)造方法中不要有返回結(jié)果的return語(yǔ)句。調(diào)用對(duì)象的成員方法時(shí),需要使用“對(duì)象實(shí)例.成員方法”的形式,很顯然,用作成員方法的函數(shù)被調(diào)用時(shí),一定伴隨有某個(gè)對(duì)象實(shí)例。this關(guān)鍵字代表某個(gè)成員方法執(zhí)行時(shí),引用該方法的當(dāng)前對(duì)象實(shí)例,所以,this關(guān)鍵字一般只在用作對(duì)象方法的函數(shù)中出現(xiàn)。<scriptlanguage=“javascript”>functionPerson(name,age){this.age=age;=name;this.say=sayFunc;}functionsayFunc(){alert(+”:”+this.age);}varperson1=newPerson(“張三”,18);person1.say();varperson2=newPerson(“李四”,20);person2.say();</script>練習(xí)制作一個(gè)盒子的對(duì)象,思考該對(duì)象有哪些屬性和哪些方法?參數(shù)傳遞問題將基本數(shù)據(jù)類型的變量作為函數(shù)參數(shù)傳遞的情況:<scriptlanguage=“javascript”>functionchangeValue(x){x=5;}varx=3;changeValue(x);alert(x);</script>此外的x值是多少?參數(shù)傳遞的問題將對(duì)象類型變量作為函數(shù)參數(shù)傳遞的情況:<scriptlanguage=“javascript”>functionPerson(name,age){this.age=age;=name;this.say=sayFunc;}functionsayFunc(){alert(+“:”+this.age);}functionchange(p1){=“李四”;}varperson1=newPerson(“張三”,18);change(person1);person1.say();</script>JavaScript的內(nèi)部對(duì)象動(dòng)態(tài)對(duì)象使用“對(duì)象實(shí)例名.成員”的格式來(lái)訪問其屬性和方法靜態(tài)對(duì)象直接使用“對(duì)象名.成員”的格式來(lái)訪問其屬性和方法。Object對(duì)象String對(duì)象Math對(duì)象Date對(duì)象toString方法Object對(duì)象Object對(duì)象提供了一種創(chuàng)建自定義對(duì)象的簡(jiǎn)單方式,不需要程序員再定義構(gòu)造函數(shù)。
<scriptlanguage=“javascript”> functiongetAttributeValue(attr) { alert(person[attr]); } varperson=newObject(); =“zs”; person.age=18; getAttributeValue(“name”); getAttributeValue(“age”); </script>String對(duì)象創(chuàng)建字符串有兩種不同方法:使用var語(yǔ)句
varnewstr=“這是我的字符串”;創(chuàng)建String對(duì)象varnewstr=newString(“這是我的字符串”)
String對(duì)象名稱說明屬性length返回字符串的長(zhǎng)度
方法big()增大字符串文本blink()使字符串文本閃爍(IE瀏覽器不支持)bold()加粗字符串文本
fontcolor()確定字體顏色
italics()用斜體顯示字符串
indexOf(“子字符串”,起始位置
)查找子字符串的位置strike()顯示加刪除線的文本
sub()將文本顯示為下標(biāo)
……toLowerCase()將字符串轉(zhuǎn)換成小寫
toUpperCase()將字符串轉(zhuǎn)換成大寫語(yǔ)法:indexOf(“查找的子字符串”,查找的起始位置)返回子字符串所在的位置,如果沒找到,返回-1例如:varxvary=“abcdefg”;x=y.indexOf(“c”,0);//返回結(jié)果為2,起始位置是0String對(duì)象charAt方法:返回指定位置的字符注意:一個(gè)字符串的第一個(gè)字符的索引位置為0,依次類推。charCodeAt方法:返回指定位置字符的Unicode編碼lastIndexOf方法:從右向左執(zhí)行match、search方法:使用正則表達(dá)式搜索replace方法:使用正則表達(dá)式替換split方法:按照指定分隔符拆分字符串slice方法:返回兩個(gè)指定位置的子字符串說明:str1.slice(0)和str1.slice(0,-1)都是返回整個(gè)字符串。substr、substring方法:返回指定位置和長(zhǎng)度的子字符串注意:substring方法返回的內(nèi)容不包含結(jié)束位置的字符。Math對(duì)象Math對(duì)象是一個(gè)靜態(tài)對(duì)象,不能使用new關(guān)鍵字創(chuàng)建對(duì)象實(shí)例,應(yīng)直接使用“對(duì)象名。成員”的格式訪問其屬性或方法,例如:varnum=Math.random();Math對(duì)象名稱說明屬性PI∏的值,約等于3.1415LN1010的自然對(duì)數(shù)的值,約等于2.302EEuler的常量的值,約等于2.718。Euler的常量用作自然對(duì)數(shù)的底數(shù)abs(y)返回y的絕對(duì)值sin(y)返回y的正弦,返回值以弧度為單位。cos(y)返回y的余弦,返回值以弧度為單位tan(y)返回y的正切,返回值以弧度為單位min(x,y)返回x和y兩個(gè)數(shù)中較小的數(shù)max(x,y)返回x和y兩個(gè)數(shù)中較大的數(shù)
random返回0-1的隨機(jī)數(shù)方法round(y)四舍五入取整sqrt(y)返回y的平方根Math.random():產(chǎn)生0-1的隨機(jī)小數(shù)Math.round():四舍五入取整,如9.34取整為9<HTML><HEAD><METAhttp-equiv="refresh"content="2"><TITLE>自動(dòng)刷新</TITLE><SCRIPTlanguage="JavaScript">document.write("2秒自動(dòng)刷新,隨機(jī)顯示圖片");vari=0;i=Math.round(Math.random()*8+1);document.write("<IMGwidth=640height=433src="+i+".jpg>");</SCRIPT></HEAD><BODY>
</BODY></HTML>Math對(duì)象假定隨機(jī)產(chǎn)生的數(shù)字i=3,上述代碼即為:<IMGwidth=640height=433src=3.jpg>顯示第三幅圖片(3.jpg)如何實(shí)現(xiàn)每隔2秒刷新網(wǎng)頁(yè)Math.round(Math.random()*8+1)產(chǎn)生1-9的數(shù)字Date對(duì)象Date對(duì)象存儲(chǔ)的日期為自1970年1月1日00:00:00以來(lái)的毫秒數(shù)var日期對(duì)象=newDate(年、月、日等參數(shù))例:varmydate=newDate(“July29,1998,10:30:00”)如果沒有參數(shù),表示當(dāng)前日期和時(shí)間例:vartoday=newDate()
Date對(duì)象方法分組說明setxxx這些方法用于設(shè)置時(shí)間和日期值getxxx這些方法用于獲取時(shí)間和日期值Toxxx這些方法用于從Date對(duì)象返回字符串值parsexxx&UTCxx這些方法用于解析字符串Data方法的分組:Date對(duì)象值整數(shù)Seconds和minutes0至59Hours0至23Day0至6(星期幾)Date1至31(月份中的天數(shù))Months0至11(一月至十二月)用作Date方法的參數(shù)的整數(shù):Date對(duì)象方法說明setDate設(shè)置Date對(duì)象中月份中的天數(shù),其值介于1至31之間。setHours設(shè)置Date對(duì)象中的小時(shí)數(shù),其值介于0至23之間。setMinutes設(shè)置
Date對(duì)象中的分鐘數(shù),其值介于0至59之間。setSeconds設(shè)置Date對(duì)象中的秒數(shù),其值介于0至59之間。setTime設(shè)置
Date對(duì)象中的時(shí)間值。setMonth設(shè)置Date對(duì)象中的月份,其值介于1至12之間。Set方法:Date對(duì)象方法說明getDate返回Date對(duì)象中月份中的天數(shù),其值介于1至31之間getDay返回Date對(duì)象中的星期幾,其值介于0至6之間getHours返回Date對(duì)象中的小時(shí)數(shù),其值介于0至23之間getMinutes返回Date對(duì)象中的分鐘數(shù),其值介于0至59之間getSeconds返回Date對(duì)象中的秒數(shù),其值介于0至59之間getMonth返回Date對(duì)象中的月份,其值介于0至11之間getFullYear返回Date對(duì)象中的年份,其值為四位數(shù)getTime返回自某一時(shí)刻(1970年1月1日)以來(lái)的毫秒數(shù)Get方法:Date對(duì)象方法說明ToGMTString使用格林尼治標(biāo)準(zhǔn)時(shí)間(GMT)數(shù)據(jù)格式將Date對(duì)象轉(zhuǎn)換成字符串表示ToLocaleString使用當(dāng)?shù)貢r(shí)間格式將Date對(duì)象轉(zhuǎn)換成字符串表示方法說明Date.parse(datestring)用日期字符串表示自1970年1月1日以來(lái)的毫秒數(shù)
Date.UTC(year,month,day,hours,min.,secs.)Date對(duì)象中自1970年1月1日以來(lái)的毫秒數(shù)
To方法:Parse方法和UTC方法<HTML><BODY><scriptlanguage="javaScript">varnow=newDate();varhour=now.getHours();if(hour>=0&&hour<=12) document.write("上午好!")if(hour>12&&hour<=18)document.write("下午好!");if(hour>18&&hour<24)document.write("晚上好!");document.write("<P>今天日期:"+now.getYear()+"年“
+(now.getMonth()+1)+"月"+now.getDate()+"日");document.write("<P>現(xiàn)在時(shí)間:"+now.getHours()+"點(diǎn)"+now.getMinutes()+"分");</script></body></HTML>Date對(duì)象如何實(shí)現(xiàn)獲得當(dāng)前日期和時(shí)間獲得小時(shí),即當(dāng)前是幾點(diǎn)判斷上午、下午還是晚上月份數(shù)字0-11,注意+1Date對(duì)象setTimeout的用法:
setTimeout(“調(diào)用的函數(shù)”,”定時(shí)的時(shí)間”)例:
varmyTime=setTimeout(”disptime()”,1000);clearTimeout(myTime);隔1000毫秒調(diào)用函數(shù)disptime()執(zhí)行關(guān)閉定時(shí)器本例的時(shí)間可以采用定時(shí)顯示,使用定時(shí)器函數(shù),隔1秒調(diào)用disptime()函數(shù)顯示時(shí)間Date對(duì)象無(wú)邊框的文本框myclockvarmyTime=setTimeout("disptime(
)",1000);設(shè)置定時(shí)器隔1秒(1000毫秒),調(diào)用函數(shù)disptime()執(zhí)行,刷新時(shí)鐘顯示Date對(duì)象JavaScript代碼<SCRIPTlanguage="JavaScript">functiondisptime(){vartime=newDate();//獲得當(dāng)前時(shí)間varhour=time.getHours();//獲得小時(shí)、分鐘、秒varminute=time.getMinutes();varsecond=time.getSeconds();varapm="AM";//默認(rèn)顯示上午:AMif(hour>12)//按12小時(shí)制顯示{hour=hour-12;apm="PM";}if(minute<10)//如果分鐘只有1位,補(bǔ)0顯示minute="0"+minute;if(second<10)//如果秒數(shù)只有1位,補(bǔ)0顯示second="0"+second;document.myform.myclock.value=hour+":"+minute+":"+second+""+apm;varmyTime=setTimeout("disptime()",1000);}</SCRIPT>使用定時(shí)器函數(shù),每隔1秒調(diào)用disptime()函數(shù)刷新顯示獲得小時(shí)、分鐘、秒根據(jù)12小時(shí)制調(diào)整時(shí)間和AM/PM標(biāo)志確保分鐘和秒顯示位數(shù)為2位toString方法toString方法是JavaScript中的所有內(nèi)部對(duì)象的一個(gè)成員方法,它的主要作用就是將對(duì)象中的數(shù)據(jù)轉(zhuǎn)換成某種格式的字符串來(lái)表示,具體的轉(zhuǎn)換方式取決于對(duì)象的類型。舉例:<scriptlanguage=“javascript”>varx=328;alert(“hes=”+x.toString(16)+
”bin=”+x.toString(2));</script>對(duì)象專用語(yǔ)句1、with語(yǔ)句:with(對(duì)象名稱){
執(zhí)行語(yǔ)句塊}2、for…in語(yǔ)句:for(變量in對(duì)象){
執(zhí)行語(yǔ)句}with舉例<scriptlanguage=“javascript”>varcurrent_time=newDate();with(current_time){ varstrDate=getYear()+”年”; strDate+=getMonth()+”月”; strDate+=getDate()+“日”; strDate+=getHours()+“:“; strDate+=getMinutes()+“:”; strDate+=getSeconds(); alert(strDate);}</script>for…in舉例<scriptlanguage=“javascript”>functionPerson(){=“sky”;this.age=19;this.height=172;}varp1=newPerson();varprop,str=“”;for(propinp1)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 上海視覺藝術(shù)學(xué)院《媒介社會(huì)學(xué)導(dǎo)論》2023-2024學(xué)年第一學(xué)期期末試卷
- 上海師范大學(xué)天華學(xué)院《學(xué)生工作實(shí)務(wù)》2023-2024學(xué)年第一學(xué)期期末試卷
- 課題申報(bào)書:高等教育高質(zhì)量發(fā)展的制度瓶頸研究
- 課題申報(bào)書:二十世紀(jì)中國(guó)畫市場(chǎng)發(fā)展史研究
- 課題申報(bào)書:多模態(tài)數(shù)據(jù)驅(qū)動(dòng)的城市夜間旅游活動(dòng)規(guī)律及其與空間協(xié)同演化機(jī)制研究
- 上海杉達(dá)學(xué)院《建筑工程信息建模課程設(shè)計(jì)》2023-2024學(xué)年第一學(xué)期期末試卷
- 2023-2024屆高考作文模擬寫作“學(xué)會(huì)借鑒靈活應(yīng)變”導(dǎo)寫及范文
- 上海農(nóng)林職業(yè)技術(shù)學(xué)院《化工原理(機(jī)械)》2023-2024學(xué)年第一學(xué)期期末試卷
- 上海紐約大學(xué)《自然資源管理概論》2023-2024學(xué)年第一學(xué)期期末試卷
- 《花的學(xué)校》第一課時(shí)公開課一等獎(jiǎng)創(chuàng)新教案
- 四川政采評(píng)審專家入庫(kù)考試基礎(chǔ)題復(fù)習(xí)測(cè)試附答案
- 新:中國(guó)兒童中樞性肌肉痙攣體外沖擊波治療臨床實(shí)踐指南
- GB/T 44819-2024煤層自然發(fā)火標(biāo)志氣體及臨界值確定方法
- 國(guó)開(上海)2024年《刑法學(xué)#》形考作業(yè)1-4答案
- 黑龍江省佳木斯二中2024-2025學(xué)年高一上學(xué)期期中考試化學(xué)試題(無(wú)答案)
- 重慶財(cái)經(jīng)學(xué)院《物流系統(tǒng)建模與仿真》2022-2023學(xué)年第一學(xué)期期末試卷
- 冬季安全施工安全培訓(xùn)
- 雇傭護(hù)工的協(xié)議書
- 安全防護(hù)措施管理制度模版(3篇)
- 河南省漯河市(2024年-2025年小學(xué)五年級(jí)語(yǔ)文)統(tǒng)編版階段練習(xí)((上下)學(xué)期)試卷及答案
- 形容詞副詞(專項(xiàng)訓(xùn)練)-2023年中考英語(yǔ)二輪復(fù)習(xí)
評(píng)論
0/150
提交評(píng)論