2019-06-11多重條件判斷語句 數(shù)組 數(shù)組常用方法 通過標(biāo)簽獲取元素 循環(huán)語句

1.多重條件判斷語句

if語句

語法三:

if(條件表達(dá)式){

語句...

}else if(條件表達(dá)式){

語句...

}else if(條件表達(dá)式){

語句...

}else{

語句...

}

if...else if...else

當(dāng)該語句執(zhí)行時(shí)敷燎,會(huì)從上到下依次對(duì)條件表達(dá)式進(jìn)行求值判斷

如果值為true竿屹,則執(zhí)行當(dāng)前語句毕贼。

如果值為false秘血,則繼續(xù)向下判斷返十。

如果所有的條件都不滿足搬泥,則執(zhí)行最后一個(gè)else后的語句

該語句中涩哟,只會(huì)有一個(gè)代碼塊被執(zhí)行埋虹,一旦代碼塊執(zhí)行了赡麦,則直接結(jié)束語句

*/

/*

條件分支語句也叫switch語句

語法:

switch(條件表達(dá)式){

case 表達(dá)式:

語句...

break;

case 表達(dá)式:

語句...

break;

default:

語句...

break;

}

執(zhí)行流程:

switch...case..語句

在執(zhí)行時(shí)會(huì)依次將case后的表達(dá)式的值和switch后的條件表達(dá)式的值進(jìn)行全等比較朴皆,

如果比較結(jié)果為true,則從當(dāng)前case處開始執(zhí)行代碼泛粹。

當(dāng)前case后的所有的代碼都會(huì)執(zhí)行遂铡,我們可以在case的后邊跟著一個(gè)break關(guān)鍵字,

這樣可以確保只會(huì)執(zhí)行當(dāng)前case后的語句晶姊,而不會(huì)執(zhí)行其他的case

如果比較結(jié)果為false扒接,則繼續(xù)向下比較

如果所有的比較結(jié)果都為false,則只執(zhí)行default后的語句

switch語句和if語句的功能實(shí)際上有重復(fù)的们衙,使用switch可以實(shí)現(xiàn)if的功能钾怔,同樣使用if也可以實(shí)現(xiàn)switch的功能,所以我們使用時(shí)蒙挑,可以根據(jù)自己的習(xí)慣選擇蒂教。

2.數(shù)組

//面向?qū)ο蟮姆绞絼?chuàng)建

var aRr01 = new Array(1,2,3,'abc');

//直接創(chuàng)建

var aRr02 = [1,2,3,'def'];//推薦使用,性能更高

//獲取數(shù)組的成員數(shù)量(長(zhǎng)度)

// alert(aRr02.length);//彈出4

// alert(aRr02[3]);//彈出cdf

var aRr03 = [[1,2,3],['a','b','c','d'],[true,false]];

// alert(aRr03.length);//彈出3

// alert(aRr03[1].length);//彈出3

alert(aRr03[1][2]);//彈出c

3.

var aRr = [1,2,3,4];

//用-連接數(shù)組元素并轉(zhuǎn)為字符串

//var sTr = aRr.join("-");//用-連接數(shù)組元素并轉(zhuǎn)為字符串脆荷,彈出1-2-3-4

// var sTr = aRr.join('');//用空串連接

// alert(sTr);//彈出1234

//向數(shù)組最后追加元素

// aRr.push(5);

// alert(aRr);//1,2,3,4,5

//刪除末尾元素

// aRr.pop();

// alert(aRr);//1,2,3

//向最前面插入元素0

// aRr.unshift(0);

// alert(aRr);//0,1,2,3,4

//刪除第一個(gè)(索引為0的)元素

// aRr.shift();

// alert(aRr);//2,3,4

//反轉(zhuǎn)

// aRr.reverse();

// alert(aRr);//4,3,2,1

//查找字母'b'第一次出現(xiàn)的索引

var aRr2 = ['a','b','c','d','a','b','c','d'];

var num = aRr2.indexOf('b');

// alert(num);//1

//從第2索引元素開始凝垛,刪除1個(gè)元素

// aRr2.splice(2,1);//刪除c

// alert(aRr2);//a,b,d,a,b,c,d

//從第2索引元素開始懊悯,刪除1個(gè)元素,再插入e

// aRr2.splice(2,1,'e');//把c替換成e

// alert(aRr2);//a,b,e,d,a,b,c,d

//刪除后面的abcd梦皮,改為fghi

aRr2.splice(4,4,'f','g','h','i');

alert(aRr2);//a,b,c,d,f,g,h,i

4.通過標(biāo)簽獲取元素

window.onload = function(){

// //獲取頁面上所有的li

// var aLi = document.getElementsByTagName('li');

//獲取id為list01的ul

var oList = document.getElementById('list01');

//再獲取這個(gè)ul下的所有l(wèi)i

var aLi = oList.getElementsByTagName('li');

alert(aLi.length);//8

// aLi.pop();//錯(cuò)誤用法炭分,aLi是一個(gè)類似數(shù)組的選擇集,沒有數(shù)組通用的一些方法

aLi[0].style.backgroundColor = 'gold';

aLi[1].style.backgroundColor = 'gold';

}

5.循環(huán)語句

/*

循環(huán)語句:

通過循環(huán)語句可以反復(fù)的執(zhí)行一段代碼多次

while循環(huán)

- 語法:

while(條件表達(dá)式){

語句...

}

- while語句在執(zhí)行時(shí)剑肯,

先對(duì)條件表達(dá)式進(jìn)行求值判斷捧毛,

如果值為true,則執(zhí)行循環(huán)體让网,

循環(huán)體執(zhí)行完畢以后呀忧,繼續(xù)對(duì)表達(dá)式進(jìn)行判斷

如果為true,則繼續(xù)執(zhí)行循環(huán)體溃睹,以此類推

如果值為false而账,則終止循環(huán)

do...while循環(huán)

- 語法:

do{

語句...

}while(條件表達(dá)式)

- 執(zhí)行流程:

do...while語句在執(zhí)行時(shí),會(huì)先執(zhí)行循環(huán)體因篇,

循環(huán)體執(zhí)行完畢以后泞辐,在對(duì)while后的條件表達(dá)式進(jìn)行判斷,

如果結(jié)果為true竞滓,則繼續(xù)執(zhí)行循環(huán)體咐吼,執(zhí)行完畢繼續(xù)判斷以此類推

如果結(jié)果為false,則終止循環(huán)

實(shí)際上這兩個(gè)語句功能類似商佑,不同的是while是先判斷后執(zhí)行锯茄,

而do...while會(huì)先執(zhí)行后判斷,

do...while可以保證循環(huán)體至少執(zhí)行一次茶没,

而while不能

for語句撇吞,也是一個(gè)循環(huán)語句,也稱為for循環(huán)

在for循環(huán)中礁叔,為我們提供了專門的位置用來放三個(gè)表達(dá)式:

1.初始化表達(dá)式

2.條件表達(dá)式

3.更新表達(dá)式

for循環(huán)的語法:

for(①初始化表達(dá)式;②條件表達(dá)式;④更新表達(dá)式){

③語句...

}

for循環(huán)的執(zhí)行流程:

①執(zhí)行初始化表達(dá)式牍颈,初始化變量(初始化表達(dá)式只會(huì)執(zhí)行一次)

②執(zhí)行條件表達(dá)式,判斷是否執(zhí)行循環(huán)琅关。

如果為true煮岁,則執(zhí)行循環(huán)③

如果為false,終止循環(huán)

④執(zhí)行更新表達(dá)式涣易,更新表達(dá)式執(zhí)行完畢繼續(xù)重復(fù)②

任意一種循環(huán)都可以互相嵌套

*/

window.onload = function(){

var oList = document.getElementById('list01');

var aLi = oList.getElementsByTagName('li');

/*for (var i = 0; i < aLi.length; i++) {

if(i % 2 == 0){

aLi[i].style.background = 'gold';

}

}*/

/*for(var j in aLi){

aLi[j].style.background = 'red';

}*/

//創(chuàng)建一個(gè)循環(huán)画机,往往需要三個(gè)步驟

//1.創(chuàng)初始化一個(gè)變量

var j = 0;

//2.在循環(huán)中設(shè)置一個(gè)條件表達(dá)式

/*while(j < aLi.length){

aLi[j].style.background = 'gold';

//3.定義一個(gè)更新表達(dá)式,每次更新初始化變量

j++;

}*/

do{

aLi[j].style.background = 'gold';

j++;

}while(j < 0)

/*

以下是死循環(huán)的寫法

像這種將條件表達(dá)式寫死為true的循環(huán)新症,叫做死循環(huán)

該循環(huán)不會(huì)停止步氏,除非瀏覽器關(guān)閉,死循環(huán)在開發(fā)中慎用

可以使用break徒爹,來終止循環(huán)

*/

/*

while(true){

if(j>10){

break;//退出整個(gè)循環(huán)

}

j++;

}

//for循環(huán)的死循環(huán)寫法

for(;;){

}

*/

/*

break關(guān)鍵字可以用來退出switch或循環(huán)語句

不能在if語句中使用break和continue

break關(guān)鍵字荚醒,會(huì)立即終止離他最近的那個(gè)循環(huán)語句

continue關(guān)鍵字可以用來跳過當(dāng)次循環(huán)

同樣continue也是默認(rèn)只會(huì)對(duì)離他最近的循環(huán)循環(huán)起作用

*/

/*

可以為循環(huán)語句創(chuàng)建一個(gè)label芋类,來標(biāo)識(shí)當(dāng)前的循環(huán)

label:循環(huán)語句

使用break語句時(shí),可以在break后跟著一個(gè)label界阁,

這樣break將會(huì)結(jié)束指定的循環(huán)侯繁,而不是最近的

*/

outer:

for(var i=0 ; i<5 ; i++){

console.log("@外層循環(huán)"+i);

for(var j=0 ; j<5; j++){

console.log("內(nèi)層循環(huán):"+j);

break outer;

}

}

}

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市泡躯,隨后出現(xiàn)的幾起案子贮竟,更是在濱河造成了極大的恐慌,老刑警劉巖较剃,帶你破解...
    沈念sama閱讀 218,755評(píng)論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件咕别,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡写穴,警方通過查閱死者的電腦和手機(jī)惰拱,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,305評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來确垫,“玉大人弓颈,你說我怎么就攤上這事帽芽∩鞠疲” “怎么了?”我有些...
    開封第一講書人閱讀 165,138評(píng)論 0 355
  • 文/不壞的土叔 我叫張陵导街,是天一觀的道長(zhǎng)披泪。 經(jīng)常有香客問我,道長(zhǎng)搬瑰,這世上最難降的妖魔是什么款票? 我笑而不...
    開封第一講書人閱讀 58,791評(píng)論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮泽论,結(jié)果婚禮上艾少,老公的妹妹穿的比我還像新娘。我一直安慰自己翼悴,他們只是感情好缚够,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,794評(píng)論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著鹦赎,像睡著了一般谍椅。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上古话,一...
    開封第一講書人閱讀 51,631評(píng)論 1 305
  • 那天雏吭,我揣著相機(jī)與錄音,去河邊找鬼陪踩。 笑死杖们,一個(gè)胖子當(dāng)著我的面吹牛悉抵,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播胀莹,決...
    沈念sama閱讀 40,362評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼基跑,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了描焰?” 一聲冷哼從身側(cè)響起媳否,我...
    開封第一講書人閱讀 39,264評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎荆秦,沒想到半個(gè)月后篱竭,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,724評(píng)論 1 315
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡步绸,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,900評(píng)論 3 336
  • 正文 我和宋清朗相戀三年掺逼,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片瓤介。...
    茶點(diǎn)故事閱讀 40,040評(píng)論 1 350
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡吕喘,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出刑桑,到底是詐尸還是另有隱情氯质,我是刑警寧澤,帶...
    沈念sama閱讀 35,742評(píng)論 5 346
  • 正文 年R本政府宣布祠斧,位于F島的核電站闻察,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏琢锋。R本人自食惡果不足惜辕漂,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,364評(píng)論 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望吴超。 院中可真熱鬧钉嘹,春花似錦、人聲如沸鲸阻。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,944評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽赘娄。三九已至仆潮,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間遣臼,已是汗流浹背性置。 一陣腳步聲響...
    開封第一講書人閱讀 33,060評(píng)論 1 270
  • 我被黑心中介騙來泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留揍堰,地道東北人鹏浅。 一個(gè)月前我還...
    沈念sama閱讀 48,247評(píng)論 3 371
  • 正文 我出身青樓嗅义,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親隐砸。 傳聞我的和親對(duì)象是個(gè)殘疾皇子之碗,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,979評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容