js中的循环方式及各类遍历的方法

for循环数组

  一、for有三个表达式:①声明循环变量;②判断循环条件;③更新循环变量;三个表达式之间,用;分割,spa

          for循环三个表达式均可以省略,可是两个“;”缺一 不可。3d

      二、for循环的执行特色:先判断再执行,与while相同  code

     三、for循环三个表达式均可以有多部分组成,第二部分多个判断条件用&& ||链接,第一三部分用逗号分割;对象

for(var num = 1;num<10;num++){
               console.log(num);//1,2,3,4,5,6,7,8,9
              }

while循环   blog

while循环()中的表达式,运算结果能够是各类类型,可是最终都会转为真假,转换规则以下。ip

  ①Boolean:true为真,false为假;
  ②String:空字符串为假,全部非空字符串为真;
  ③Number:0为假,一切非0数字为真;
  ④null/Undefined/NaN:全为假;
  ⑤Object:全为真。字符串

var num = 1;//一、声明循环变量
            
while (num<10){//二、判断循环条件;
    console.log(num);//三、执行循环体操做;
    num++;//四、更新循环变量;
}

do-while循环  it

while循环特色:先判断后执行;io

do-while循环特色:先执行再判断,即便初始条件不成立,do-while循环至少执行一次,也就是说do-while循环比while循环多执行一次。

 

var num = 10;
            
do{
    console.log(num);//10 9 8 7 6 5 4 3 2 1 0
    num--;
    }while(num>=0);
            
   console.log(num);//-1

 循环的嵌套

      外层循环控制行
      内层循环控制列
      循环的嵌套:解决多行多列的结构
    
for(var j=1;j<9;j++){
        for(var i=0;i<j+1;i++){
            document.write("*");
        }
        document.write("<br>");
    }

       

       

遍历方法

for - in

for - in语句用于对数组或者对象的属性进行循环操做。

for - in循环中的代码每执行一次,就会对数组或者对象的属性进行一次操做。

 

let obj={'name':'programmer','age':'22','height':'180'};
for(let i in obj){
    console.log(i,obj[i])
}

 

for - of

 for...of循环能够使用的范围包括数组、Set 和 Map 结构、某些相似数组的对象(好比arguments对象、DOM NodeList 对象)、后文的 Generator 对象,以及字符 串。

 JavaScript 原有的for-in循环,只能得到对象的键名,不能直接获取键值。ES6 提供for...of循环,容许遍历得到键值

  数组操做:

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

        for (let a in arr) {
          console.log(a); // 0 1 2 3
        }
        
        for (let a of arr) {
          console.log(a); // a b c d
        }

 相似数组的对象操做:

        // 字符串
        var str = "hello";
        
        for (let s of str) {
          console.log(s); // h e l l o
        }
        
        // DOM NodeList对象
        let paras = document.querySelectorAll("p");
        
        for (let p of paras) {
          p.classList.add("test");
        }
        
        // arguments对象
        function printArgs() {
          for (let x of arguments) {
            console.log(x);
          }
        }
        printArgs('a', 'b');// 'a' 'b'

 

  循环控制语句

      一、break:跳出本层循环,继续执行循环后面的语句。
    若是循环有多层,则break只能跳出一层。
      二、continue:跳过本次循环剩余的代码,继续执行下一次循环。
    ①对与for循环,continue以后执行的语句,是循环变量更新语句i++;
    ②对于while、do-while循环,continue以后执行的语句,是循环条件判断;
    所以,使用这两个循环时,必须将continue放到i++以后使用,不然
continue将跳过 i++进入死循环。

      

 for(var i=0;i<10;i++){
        if(i == 5){
            break;
        }
        console.log(i);//0,1,2,3,4
    }

    for(var i=0;i<10;i++){
        if(i == 5){
            continue;
        }
        console.log(i);//0,1,2,3,4,6,7,8,9
    }
相关文章
相关标签/搜索