流程控制語(yǔ)句
var a = 1
if(a === 1){
console.log('ok')
}else {
console.log('not ok')
}
if語(yǔ)句可以單獨(dú)使用,也可以和多個(gè)else連續(xù)使用
var a = 1
if(a === 1){
console.log('ok')
}else if(a === 2) {
console.log('not ok')
}else if(a === 3){
console.log('good')
}else{
console.log('but')
}
switch case
var score = 99
switch(score) {
case 100:
console.log('100分')
break;
case 99:
console.log('99分')
break;
default:
console.log('其他分?jǐn)?shù)')
}
var score = 100
switch(true) {
case score == 100:
console.log('perfect')
break;
case score >= 90:
console.log('nice')
break;
case score >= 80:
console.log('good')
break;
default:
console.log('bad')
}
while循環(huán)
while(expression){
statement;
}//圓括號(hào)內(nèi)的屬性如果是true,循環(huán)一直執(zhí)行,值為false時(shí)循環(huán)停止
例如:
var i = 10;
while(i > 0){
console.log(i);
i--;
}
do while循環(huán)
do{
statment;
}while(expression);
先執(zhí)行一次代碼,再判斷while循環(huán)是否為true
例如:
var i = 4;
do{
console.log(i);
i--
}while(i > 5);//4 < 5 執(zhí)行一次后循環(huán)停止
for循環(huán)
for(var i = 10; i > 0; i--){
console.log(i);
}//先給i賦值10,再判斷i是否>0,如果是的話就執(zhí)行console.log(i)。然后再執(zhí)行i--,執(zhí)行完成后進(jìn)行判斷
關(guān)于for循環(huán)的一點(diǎn)細(xì)節(jié)
如下函數(shù)
var navbar = document.querySelector("#tip")
var child = document.createElement("div")
for(var i=0; i<3; i++){
var result = document.createTextNode("hello"+i)
child.appendChild(result)
navbar.append(child)
}
輸出結(jié)果如下

1
本函數(shù)在id為tip的標(biāo)簽下創(chuàng)建了一個(gè)div,在div下for循環(huán)運(yùn)行3次,div函數(shù)中輸出3段result的結(jié)果。
運(yùn)行如下代碼
var navbar = document.querySelector("#tip")
for(var i=0; i<3; i++){
var child = document.createElement("div")
var result = document.createTextNode("hello"+i)
child.appendChild(result)
navbar.append(child)
}
結(jié)果如下

此時(shí),child在for循環(huán)內(nèi)賦值,則出現(xiàn)不同結(jié)果
break和continue
break語(yǔ)句和continue語(yǔ)句都具有跳轉(zhuǎn)作用,可以讓代碼不按既有的順序執(zhí)行。
break語(yǔ)句用于跳出代碼塊或循環(huán)。
var i = 0;
while(i < 100) {
console.log('i當(dāng)前為:' + i);
i++;
if (i === 10) break;
}
上面代碼只會(huì)執(zhí)行10次循環(huán),一旦i等于10,就會(huì)跳出循環(huán)。
continue語(yǔ)句用于立即終止本輪循環(huán),返回循環(huán)結(jié)構(gòu)的頭部,開始下一輪循環(huán)。
var i = 0;
while (i < 100){
i++;
if (i%2 === 0) continue;
console.log('i當(dāng)前為:' + i);
}
或
for(var i = 0; i < 100; i++){
if(i % 2 === 0)continue;
console.log(i);
}
上面代碼只有在i為奇數(shù)時(shí),才會(huì)輸出i的值。如果i為偶數(shù),則直接進(jìn)入下一輪循環(huán)。
如果存在多重循環(huán),不帶參數(shù)的break語(yǔ)句和continue語(yǔ)句都只針對(duì)最內(nèi)層循環(huán)。
switch case 語(yǔ)句中的 break 有什么作用
Break 語(yǔ)句它用于跳出 switch() 語(yǔ)句。
break 語(yǔ)句可用于跳出循環(huán)。
break 語(yǔ)句跳出循環(huán)后,會(huì)繼續(xù)執(zhí)行該循環(huán)之后的代碼(如果有的話):
for (i=0;i<10;i++)
{
if (i==3)
{
break;
}
x=x + "The number is " + i + "<br>";
}
如果不用break語(yǔ)句終止循環(huán),switch()語(yǔ)句的內(nèi)容會(huì)全部執(zhí)行。