zoukankan      html  css  js  c++  java
  • js 数组的循环

    //数组循环
        var list=[
          {
            name:"hq",
            age:"12"
          },
          {
            name:"xq",
            age:"24"
          },
          {
            name:"gq",
            age:"32"
          }
        ];
        
        //使用临时变量,将长度缓存起来,避免重复获取数组长度,当数组较大时优化效果才会比较明显。
        for(var i=0;i<list.length;i++){
            console.log(list[i])
        }
        /* 遍历数组中的每一项,没有返回值,对原数组没有影响,不支持IE */
        list.forEach(function(v,k){
            console.log("27forEach",v);
            //v.age="44"//这样赋值是可以改变原来数组的
        })
        //map的回调函数中支持return返回值;return的是啥,相当于把数组中的这一项变为啥(并不影响原来的数组,只是相当于把原数组克隆一份,把克隆的这一份的数组中的对应项改变了);
        /*  */
        list.map(function(v,k,ar){
            console.log("38map",v,k,ar);
            //v.age=44
        })
        console.log("42",list)
        
        //forof可以正确响应break、continue和return语句
        for(let val of list){
            console.log("44",val);
            //val.age=44
        }
        
        //for - in语句用于对数组或者对象的属性进行循环操作。
        //主要用于循环对象
        let obj={'name':'programmer','age':'22','height':'180'};
        for(let i in obj){
            console.log(i,obj[i])
        }
        
        
    
        // while (条件)
        // {
        //     需要执行的代码
        // }
        var i=0,j=0;
        while(i<list.length){
            console.log("63",i,list[i]);
            i++
        }
        
        do{
            console.log("82",j,list[j])
            j++;
        }while(j<list.length)
        
        /* ES6为Array增加了from函数用来将其他对象转换成数组。
           也可以用于数组的循环
         */
         var objectc={name:"hh"}
         Array.from(list,function(v,k){
             console.log("79",v);
             //console.log(this);this指向objectc
             //v.age="55"
         },objectc);
         console.log(list);
        
        
        //every,some更多用于判断
        //every()是对数组中的每一项运行给定函数,如果该函数对每一项返回true,则返回true。
        var num=[10,12,13,15,16,11,13]
        var b=num.every(function(item,index,arr){
            return item>15//所有的都为true才为true,否则false
        })
        console.log(b);
        //.some()方法,同样是针对数组中的每一个元素,但是这个方法是,只要有一个元素比对结果为true,返回结果就为true,反之要所有的元素比对结果为false才为false
        //与every()相反
        var c=num.some(function(item,index,arr){
            return item>15//有其中一个为true就为true,所有false才是false
        }) 
        console.log("some",c);

    参考:

    https://www.cnblogs.com/woshidouzia/p/9304603.html

    https://www.jb51.net/article/204620.htm

    https://www.cnblogs.com/zl-light/p/11482005.html

    https://blog.csdn.net/shangyanaf/article/details/80415236

    https://blog.csdn.net/a806488840/article/details/89668616 -- every/some

    https://www.cnblogs.com/lxz-blogs/p/12807706.html --array.from

    https://www.cnblogs.com/kongxianghai/p/7417210.html

  • 相关阅读:
    SQL GUID和自增列做主键的优缺点
    php 一维数组去重
    php + crontab 执行定时任务
    PHP内置函数生成随机数的方法汇总
    PHP替换回车换行的三种方法
    Yii2查询之where条件拼装
    yii2 使用阿里大鱼短信
    javascript对数据处理
    Vue 404页面处理
    vue 中view层中方法的使用
  • 原文地址:https://www.cnblogs.com/xqschool/p/15514431.html
Copyright © 2011-2022 走看看