-
什么是事件
JavaScript?創(chuàng)建動(dòng)態(tài)頁(yè)面。事件是可以被 JavaScript 偵測(cè)到的行為。 網(wǎng)頁(yè)中的每個(gè)元素都可以產(chǎn)生某些可以觸發(fā) JavaScript 函數(shù)或程序的事件。
比如說(shuō),當(dāng)用戶單擊按鈕或者提交表單數(shù)據(jù)時(shí),就發(fā)生一個(gè)鼠標(biāo)單擊(onclick)事件,需要瀏覽器做出處理,返回給用戶一個(gè)結(jié)果。
主要事件表:
查看全部 -
返回值的函數(shù)
思考:上一節(jié)函數(shù)中,通過(guò)"document.write"把結(jié)果輸出來(lái),如果想對(duì)函數(shù)的結(jié)果進(jìn)行處理怎么辦呢?
我們只要把"document.write(sum)"這行改成如下代碼:
function add2(x,y) { ? ?sum = x + y; ? ?return sum; //返回函數(shù)值,return后面的值叫做返回值。 }
還可以通過(guò)變量存儲(chǔ)調(diào)用函數(shù)的返回值,代碼如下:
result = add2(3,4);//語(yǔ)句執(zhí)行后,result變量中的值為7。
注意:函數(shù)中參數(shù)和返回值不只是數(shù)字,還可以是字符串等其它類型。?
查看全部 -
sort(方法函數(shù))?方法,?使數(shù)組中的元素按照一定的順序排列,?若不指定方法函數(shù),則按照unicode碼順序排列,?如果指定方法函數(shù),則按照方法函數(shù)指定的排序方法排列.?myarr.sort(sortMethod);
? ? 該方法函數(shù)需要比較兩個(gè)值,?然后返回一個(gè)用于說(shuō)明相對(duì)這兩個(gè)值的相對(duì)順序的數(shù)字.?比較函數(shù)應(yīng)該具備兩個(gè)參數(shù)a,b,其返回值如下:
? ? 若a-b<=-1,?排列: ab
? ? a-b>-1&&a-b<1 ,則表示a和b具有相同的排序順序
? ? a-b>=1,? 排列:?ba
查看全部 -
了解成員數(shù)量(數(shù)組屬性length)
語(yǔ)法:
myarray.length;? ?//獲得數(shù)組myarray的長(zhǎng)度
查看全部 -
reverse()?方法,?對(duì)象.方法調(diào)用,改方法會(huì)改變?cè)瓉?lái)的數(shù)組,而不會(huì)創(chuàng)建新的數(shù)組
查看全部 -
join()?方法
用于把所有元素放入一個(gè)字符串,?改字符串把數(shù)組中的各個(gè)元素串起來(lái), 用分隔符把每個(gè)元素?分隔開(kāi),該方法不影響數(shù)組原本的內(nèi)容.
eg:?var myarr1=new Array("86","010");
var myarr2=new Array("86497581");
var myarr3=myarr1.concat("myarr2");
document.write(myarr3.join("-"));? //86-010-86497581
查看全部 -
concat()?方法,?用于連接兩個(gè)或多個(gè)數(shù)組連接起來(lái) ,此方法用于返回一個(gè)新的數(shù)組,不改變?cè)瓉?lái)的數(shù)組.
eg1: var myarr1=new Array();
? ? ?var myarr2=new Array();
var myarr3=myarr1.concat(myarr2);
eg2:?var myarr=[1,2,3);
document.write(myarr.concat(4,5));? //輸出值1,2,3,4,5
? ? ?
查看全部 -
有參數(shù)的函數(shù)
上節(jié)中add2()函數(shù)不能實(shí)現(xiàn)任意指定兩數(shù)相加。其實(shí),定義函數(shù)還可以如下格式:
function 函數(shù)名(參數(shù)1,參數(shù)2) { ? ? ?函數(shù)代碼 }
注意:參數(shù)可以多個(gè),根據(jù)需要增減參數(shù)個(gè)數(shù)。參數(shù)之間用(逗號(hào),)隔開(kāi)。
按照這個(gè)格式,函數(shù)實(shí)現(xiàn)任意兩個(gè)數(shù)的和應(yīng)該寫(xiě)成:
function add2(x,y) { ? ?sum = x + y; ? ?document.write(sum); }
x和y則是函數(shù)的兩個(gè)參數(shù),調(diào)用函數(shù)的時(shí)候,我們可通過(guò)這兩個(gè)參數(shù)把兩個(gè)實(shí)際的加數(shù)傳遞給函數(shù)了。
例如,add2(3,4)會(huì)求3+4的和,add2(60,20)則會(huì)求出60和20的和。
查看全部 -
函數(shù)調(diào)用
函數(shù)定義好后,是不能自動(dòng)執(zhí)行的,需要調(diào)用它,直接在需要的位置寫(xiě)函數(shù)名。
第一種情況:在<script>標(biāo)簽內(nèi)調(diào)用。
<script type="text/javascript"> ? ? function add2() ? ? { ? ? ? ? ?sum = 1 + 1; ? ? ? ? ?alert(sum); ? ? } ? add2();//調(diào)用函數(shù),直接寫(xiě)函數(shù)名。 </SCRIPT>
第二種情況:在HTML文件中調(diào)用,如通過(guò)點(diǎn)擊按鈕后調(diào)用定義好的函數(shù)。
<html> <head> <script type="text/javascript"> ? ?function add2() ? ?{ ? ? ? ? ?sum = 5 + 6; ? ? ? ? ?alert(sum); ? ?} </script> </head> <body> <form> <input type="button" value="click it" onclick="add2()"> ?//按鈕,onclick點(diǎn)擊事件,直接寫(xiě)函數(shù)名 </form> </body> </html>
查看全部 -
定義函數(shù)
如何定義一個(gè)函數(shù)呢?看看下面的格式:
function ?函數(shù)名( ) { ? ? ?函數(shù)體; }
function定義函數(shù)的關(guān)鍵字,“函數(shù)名”你為函數(shù)取的名字,“函數(shù)體”替換為完成特定功能的代碼。
我們完成對(duì)兩個(gè)數(shù)求和并顯示結(jié)果的功能。并給函數(shù)起個(gè)有意義的名字:“add2”,代碼如下:
<script type="text/javascript"> ? function add2(){ ? ? sum = 3 + 2; ? ? alert(sum); ? } ??add2(); </script>
結(jié)果:?
查看全部 -
什么是函數(shù)
函數(shù)的作用,可以寫(xiě)一次代碼,然后反復(fù)地重用這個(gè)代碼。
如:我們要完成多組數(shù)和的功能。
var sum; ? ?sum = 3+2; alert(sum); sum=7+8 ; alert(sum); ?.... ?//不停重復(fù)兩行代碼
如果要實(shí)現(xiàn)8組數(shù)的和,就需要16行代碼,實(shí)現(xiàn)的越多,代碼行也就越多。所以我們可以把完成特定功能的代碼塊放到一個(gè)函數(shù)里,直接調(diào)用這個(gè)函數(shù),就省去重復(fù)輸入大量代碼的麻煩。
使用函數(shù)完成:
function add2(a,b){ sum = a + b; ?alert(sum); } // ?只需寫(xiě)一次就可以 add2(3,2); add2(7,8); .... ?//只需調(diào)用函數(shù)就可以
查看全部 -
繼續(xù)循環(huán)continue
continue的作用是僅僅跳過(guò)本次循環(huán),而整個(gè)循環(huán)體繼續(xù)執(zhí)行。
語(yǔ)句結(jié)構(gòu):
for(初始條件;判斷條件;循環(huán)后條件值更新) { ? if(特殊情況) ? { continue; } ?循環(huán)代碼 }
上面的循環(huán)中,當(dāng)特殊情況發(fā)生的時(shí)候,本次循環(huán)將被跳過(guò),而后續(xù)的循環(huán)則不會(huì)受到影響。好比輸出10個(gè)數(shù)字,如果數(shù)字為5就不輸出了。
查看全部 -
退出循環(huán)break
在while、for、do...while、while循環(huán)中使用break語(yǔ)句退出當(dāng)前循環(huán),直接執(zhí)行后面的代碼。
格式如下:
for(初始條件;判斷條件;循環(huán)后條件值更新) { ? if(特殊情況) ? {break;} ? 循環(huán)代碼 }
當(dāng)遇到特殊情況的時(shí)候,循環(huán)就會(huì)立即結(jié)束??纯聪旅娴睦?,輸出10個(gè)數(shù),如果數(shù)值為5,就停止輸出。
注:當(dāng)num=5的時(shí)候循環(huán)就會(huì)結(jié)束,不會(huì)輸出后面循環(huán)的內(nèi)容。
查看全部 -
來(lái)來(lái)回回(Do...while循環(huán))
do while結(jié)構(gòu)的基本原理和while結(jié)構(gòu)是基本相同的,但是它保證循環(huán)體至少被執(zhí)行一次。因?yàn)樗窍葓?zhí)行代碼,后判斷條件,如果條件為真,繼續(xù)循環(huán)。
do...while語(yǔ)句結(jié)構(gòu):
do { ??? 循環(huán)語(yǔ)句 ?} while(判斷條件)
我們?cè)囍敵?個(gè)數(shù)字。
<script type="text/javascript"> ?? num= 1; ?? do ?? { ???? document.write("數(shù)值為:" +? num+"<br />"); ???? num++; //更新條件 ?? } ?? while (num<=5) </script>
查看全部 -
反反復(fù)復(fù)(while循環(huán))
和for循環(huán)有相同功能的還有while循環(huán), while循環(huán)重復(fù)執(zhí)行一段代碼,直到某個(gè)條件不再滿足。
while語(yǔ)句結(jié)構(gòu):
while(判斷條件) { ? ? 循環(huán)語(yǔ)句 ?}
使用while循環(huán),完成從盒子里取球的動(dòng)作,每次取一個(gè),共6個(gè)球。
<script type="text/javascript"> var num=0; ?//初始化值 while (num<=6) ? //條件判斷 { ? document.write("取出第"+num+"個(gè)球<br />"); ? num=num+1; ?//條件值更新 } </script>
查看全部
舉報(bào)