美文网首页
小程序 数组长度与实际不一致?

小程序 数组长度与实际不一致?

作者: nCov | 来源:发表于2019-08-05 12:52 被阅读0次
    console.log(imagesArr)
         
        for (let i = 0; i < imagesArr.length; i++) {
         // imgArr.push(imagesArr[i])
          imgArr[i] = imagesArr[0]
          
        }
        
        
     console.log(imgArr)
    

    循环前 打印显示数组长度为4,也有数据


    长度为4

    循环后 打印数组 显示4 ,实际显示只有2条

    长度2.jpg

    这个问题很奇怪,我用了1天的时间终于爬出此坑,特写此文纪念一下!其实很简单、很基础
    原因是console记录的是打印的那个点的状态,而后必然有的操作,因此造成数值不一致。

    我就在代码后面 就所有 循环 删除操作

    //错误的操作
    let imagesArr=["cloud://1.jpg",
                       "cloud://2.jpg",
                       "cloud://3.jpg",
                       "cloud://4.jpg"
                       
                        ]
        
            origimage = [],    
            imgArr = [];  
           
    
            console.log(imagesArr)
         
        for (let i = 0; i < imagesArr.length; i++) {
               imgArr.push(imagesArr[i])
                  
          
        }
        
        
       
       
       imgArr.forEach(function(e,k){
          if(e.search(/cloud/) != -1){
               origimage.push(e)
               imgArr.splice(k,1)
             }
    
        })
    
    
      console.log(origimage)
    
    来源网络,侵权请联系.jpg

    上图跟我我的情况差不多,当时手机截图一张,供君参考,秒过坑洞!

    相关文章

      网友评论

          本文标题:小程序 数组长度与实际不一致?

          本文链接:https://www.haomeiwen.com/subject/xhapdctx.html