学習日記

プログラミング学習のアウトプット用日記

今日の復習

ループ構文

 →反復に分類。同じ処理を繰り返す。

 
while命令

→条件が真である間、処理処理を繰り返す。

  •  構文

while(条件式){

 条件式がtrueのときに実行される命令

}

var x=10;
while(x<10){
 console.log('xの値は'+x)
 x++;
}//結果:xの値は8 xの値は9


do...while命令

→条件が真である間、処理処理を繰り返す。

  •  構文

do{

 条件式がtrueのときに実行される命令

}while(条件式);

var x=10;
do{
  console.log('xの値は'+x);
  x++;
}while(x<10);//結果:xの値は8 xの値は9



while命令とdo...while命令の違い

→while命令は前置判定。条件式をループの最初で判定。

 do...while命令は後置判定。条件式をループの最後で判定。

 そのため条件の真偽に関わらず、後置判定では必ず処理されるが

 前置判定では処理されない場合がある。

 

for命令

→回数を指定してループ処理をさせる。

  • 構文

for(初期化式;ループ継続条件式;増減式){

 ループ内で実行する命令

}

for(var x=8;x<10;x++){
 console.log('Xの値は'+x);
};//結果:xの値は8 xの値は9

処理の流れ

var x = 8

x<10

(8<10)

true

console.log('Xの値は'+x);

(コンソールに表示)

x++

(9=8+1)

x<10

(9<10)

true

console.log('Xの値は'+x);

(コンソールに表示)

x++

(10=9+1)

x<10

(x<10)

false

終了

  • 例2

→カンマ演算子を利用

for(var i=1,j=1;i<5;i++,j++){
 console.log('i*jは'+i*j);
}//結果:i*jは1 i*jは4  i*jは9  i*jは16 

 

for...in命令

→オブジェクトのプロパティを取り出して先頭から順に処理する。

  • 構文

for(仮変数 in 連想配列){

 ループ内で実行する命令

};

var data={apple:150,orange:100,banana:120};
for(var key in data){
 console.log(key+"="+data[key]);
};

/結果:apple =150 orange=100 banana=120



for...of命令 ES2015

→配列などを列挙する命令

  • 構文

for(仮変数 of 配列){

 ループ内で実行する命令

}

var data = ['100','200','300'];
for(var val of data){
 console.log(val);
};

/結果:100 200 300