1. 程式人生 > >day15 JS條件語句和迴圈語句

day15 JS條件語句和迴圈語句

一、條件語句

1. if else語句

if(條件語句){ 
	滿足條件執行的語句 
}else{ 
 	不滿足條件時執行的語句 
}

if 和 &&相互轉化

if(1 <  2){
 document.write("a");
}
1 < 2 && document.write("a");

2、if…else if…語句

因為條件相斥,可用else if。當滿足條件時即執行輸出,終止下面的判斷。

var score = parseInt(window.prompt('input'));
if(score > 90){
	document.write("優秀");	
}else if(score > 80){
	document.write("良好");
}else if(score > 70){
	document.write("中等");
}else if(score > 60){
	document.write("及格");
}else{
	document.write("呵呵");
}

3、 switch語句

switch(條件語句){ 
	case 1:滿足條件1時執行的程式碼; 
	break;  //跳出當前迴圈 
	case 2:滿足條件2時執行的程式碼; 
	break;  //跳出當前迴圈 
	default:不符合條件時執行的程式碼; 
	break; 
}

switch語句如果不加break,會執行滿足條件往下的所有輸出語句(下漏)。
利用這個特性可以簡化程式碼。如以下程式碼串,輸入Monday~Firday 都會輸出“working”。

var date = window.prompt('input');
switch(date){ 
	case "Monday":
	case "Tuseday":
	case "Wednesday":
	case"Thursday":
	case"Firday":console.log('working');break;
	case"Saturday":
	case"Sunday":console.log('relaxing');break;
}

4、break

終止迴圈,放在迴圈外會報錯。

var sum = 0;
for(var i = 0; i < 100; i++){
    sum +=i;
    document.write(i);	
    if(sum > 100){
       break;
    } 
 }

5、continue

終止本次迴圈,繼續下一個迴圈

for(var i = 0; i < 100; i++){
     if(i%7==0 || i % 10 == 7){
        continue;
      }
      console.log(i);
}

二、迴圈語句

1、for迴圈

for迴圈語句標準格式,以列印10個a為例:

     (1)        (2)    (3)
for(var i = 0; i <10; i ++){
    console.log("a");
}

for迴圈非常靈活,沒有固定的語句。括號裡的三個式子代表迴圈次數。

var i = 0;
for(; i < 10; ){
     document.write('a');
     i ++;
}
var i = 1;
var count = 0;
for(; i ; ){
    document.write('a');
    count ++;
    if(count == 10){
        i = 0;
     }
 }

var i = 1;
for(; i; ){
   document.write("a");
   i++;
   if (i == 11) {
       i = 0;
   }
}

累加

var i = 1;
var count = 0;
for (; i<11; i++) {
    count += i;
}
document.write(count);

列印 0~99

var i = 100;
for(; i--;){
 document.write(i+" ");
}

列印100以內, 7 的倍數 和 含7的數字

for(var i = 1; i < 100; i++){
 if(i % 7 == 0 || i % 10 == 7 || i / 10 - (i % 10)/10 == 7 ){
  	document.write(i + " ");  
    }
}

2、while迴圈

while迴圈底層機制就是for迴圈,即相當於前後不寫式子for( ; _ ; ){ }

列印100以內, 7 的倍數 和 含7的數字

var i = 1;
while(i < 100){
      if(i % 7 == 0 || i % 10 == 7 || i / 10 - (i % 10)/10 == 7 ){
      document.write(i + " ");  
      }
      i ++;
}

無限死迴圈 never-ending loop :

var i = 0;
while(1){
   document.write(i);
   i ++;
}

3、do- while

先執行一次迴圈體,後判斷是否繼續執行。