JavaScript学習日記4サイクル

3730 ワード

JavaScriptのループは、2つのタイプがあります.1つはforサイクルで、初期条件、終了条件、およびインクリメント条件によって、ステートメントブロックを循環的に実行します.
1 var x = 0;
2 var i;
3 for (i=1; i<=10000; i++) {
4     x = x + i;
5 }
6 x; // 50005000
forサイクルの制御条件を分析しましょう.
  • i=1これは初期条件であり、変数iを1に置く.
  • i<=10000これは判断条件で、満足する時循環を続けて、満足しないで循環を退出します.
  • i++はサイクル毎のインクリメント条件であり、ループ後変数iは1ずつ加算されるので、最終的にはいくつかのループ後に判断条件i<=10000を満たさずにループを終了する.
  • :forサイクルの3つの条件は省略できます.ループを終了する判断条件がない場合は、break文を使用してループを終了しなければなりません.そうでなければ、デッドサイクルです.
      for ... inサイクルforサイクルの変形体はfor ... inサイクルであり、オブジェクトのすべての属性を順次に循環させることができる.
    1 var o={
    2          name:'jack',
    3          age:20,
    4          city:'beijing'
    5 };
    6 
    7 for(var key in o){
    8     alert(key);
    9 } // name  age  city
     
    whileforサイクルは、既知のサイクルの初期および終了条件のときに非常に有用である.上記の条件を無視したforサイクルはサイクルのロジックがよく見えなくなります.この場合はwhileサイクルを使ったほうがいいです.whileサイクルは判断条件が一つしかなく、条件が満たされれば、絶えず循環し、条件が満たされない場合は循環を終了する.
     
    ド…while
    最後のサイクルはdo { ... } while()サイクルであり、whileサイクルとの唯一の違いは、ループが開始されるたびに条件を判断するのではなく、ループが完了するたびに条件を判断することである.
     
    注意:do { ... } while()サイクルを使う場合は注意してください.巡回体験は少なくとも1回実行します.forサイクルとwhileサイクルは一回も実行しないかもしれません.
     
     
    練習します
    配列中の名前を巡回して表示してください.Hello, xxx!:var arr=[Bart],'Lisa','Adam';forサイクルとwhileサイクルを試してみてください.順序付けと順序付けの2つの方法で巡回します.
    forサイクル順 
    var arr = ['Bart', 'Lisa', 'Adam'];
    var i , x;
    for(i=0;i<arr.length;i++){
      x=arr[i];
      alert('hello,'+x+'!');
    }
     
    for循環逆順
    1 var arr = ['Bart', 'Lisa', 'Adam'];
    2 var i , x;
    3 for(i=0;i<arr.length;i++){  
    4    arr.reverse();
    5     x=arr[i];
    6     alert('hello,'+x+'!'); 
    7 }
     
    whileサイクル順
    1  var arr = ['Bart', 'Lisa', 'Adam'];
    2  var n =0;
    3  while(n<arr.length){
    4       alert('hello,'+arr[n]+'!');
    5       n=n+1;
    6  }
    whileサイクル倒順
     
     
    var arr = ['Bart', 'Lisa', 'Adam'];
    var n =0;
    while(n<arr.length){
         arr.reverse();
         alert('hello,'+arr[n]+'!');
          n=n+1;
    }