摘要:在中增加数组新元素在中增加数组元素,不会导致循环增加,循环次数还是原来数组的长度。但由于删除时,获取到的当前元素已经是第二个,所以输出的还是感觉总结的有价值的同学请点个赞,给个鼓励,给点动力,谢谢支持
在foreach中增加数组新元素
在foreach中增加数组元素,不会导致循环增加,循环次数还是原来数组的长度。
var arr=[1,2,3]; arr.forEach((item)=>{ if(item==2){ arr.push(7); arr.push(8); } console.log(item); }); console.log(arr.length);
结果是:1,2,3,5,新增的7、8元素并没有被循环,但是数组的长度确实是增加了。
在foreach中删除属于元素和增加不同的是,中数组中减少元素却会减少循环次数,并且删除的元素后面的元素会被“跳过”
var arr=[1,2,3]; arr.forEach((item)=>{ if(item==2){ arr.splice(1,1); } console.log(item); }); console.log(arr.length);
输出的结果:1,2,2
第二个被删除了,长度已经变成了2,所以循环到第二次就停止了,导致第三个元素没被循环,发生“跳过”现象。但由于删除时,获取到的当前元素已经是第二个,所以输出的还是2.感觉总结的有价值的同学请点个赞,给个鼓励,给点动力,谢谢支持!!!
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/94436.html
摘要:中基础中的三大坑,遍历,引用机制,数组。今天我们在讲讲中的一些奇怪现象。本文适合有一定基础的。运行流程共用一个结构体开始遍历数组,进行判断,拷贝数组是一个新的结构体,操作的是新的结构体。那么遍历数组时,全程与原数组无关。 PHP中基础中的三大坑,foreach遍历,引用机制&,数组。 今天我们在讲讲foreach中的一些奇怪现象。 在讲解之前,可以先看看我其他相关的文章,属于同一个大的...
摘要:使用遍历数组有三点问题遍历顺序不固定引擎不保证对象的遍历顺序。作为原生函数,和自身操作字符串的速度是很快的。由于没有返回值返回,所以它的回调函数通常是包含副作用的,否则这个写了毫无意义。接受一个回调函数,你可以提前,相当于手写循环中的。 不要用 for_in 遍历数组 这是 JavaScript 初学者常见的误区。for_in 用于遍历对象中包括原型链上的所有可枚举的(enumerab...
摘要:返回值自写一下函数这就是一个简单的自写的一个函数,代表操作的数组,代表用来操作数组的函数,传入数组和函数。返回值返回排序后的数组。分隔符指定一个字符串来分隔数组的每个元素。生成新数组元素的函数,使用三个参数。 什么是数组 在阮一峰的《JavaScript 标准参考教程(alpha)》中的解释是:数组(array)是按次序排列的一组值。每个值的位置都有编号(从0开始),整个数组用方括号表...
摘要:如何证明我的说法呢可以用下面这段代码检验。那么在这里我们需要特别注意,为了保险起见我们在遍历数组后,最好手动一下数组,防止出错这样就正常了。还有一点手册也提醒我们了转成代码的意思就是遍历后和是真实存在的,最好使用后能手动掉。 以下所有结论均基于PHP5版本看下面一段最基础的foreach遍历数组代码。 输出为’0a1b2c’自然没有疑问,那么此过程中$arr,$key,$valu...
阅读 2027·2023-04-26 02:23
阅读 1769·2021-09-03 10:30
阅读 1250·2019-08-30 15:43
阅读 1081·2019-08-29 16:29
阅读 461·2019-08-29 12:28
阅读 2235·2019-08-26 12:13
阅读 2078·2019-08-26 12:01
阅读 2330·2019-08-26 11:56