为了账号安全,请及时绑定邮箱和手机立即绑定

在 forEach 循环期间跳过第一次迭代

在 forEach 循环期间跳过第一次迭代

慕田峪7331174 2023-01-06 16:13:18
如何跳过 forEach 循环中的第一次迭代?我的 forEach 循环按预期工作,但我需要从第二个项目开始,完全忽略第一个项目。我正在使用 ES6。cars.forEach(car => {...do something});我以为我可以做类似的事情cars.skip(1).forEach(car => {...do something});
查看完整描述

5 回答

?
繁星淼淼

TA贡献1775条经验 获得超11个赞

您需要检查索引,并根据需要使用该值的返回值。在您的情况下,您需要跳过零索引(0),这是代码


const cars = ['audi', 'bmw', 'maybach']


cars.forEach((car, index) => {

  if (index === 0) return;

  console.log(car)

});

此代码将显示“宝马”和“迈巴赫”


查看完整回答
反对 回复 2023-01-06
?
素胚勾勒不出你

TA贡献1827条经验 获得超9个赞

写出我的评论作为答案:

cars.slice(1).forEach(car => { do something });

MDN 对 slice 方法的参考:https ://developer.mozilla.org/nl/docs/Web/JavaScript/Reference/Global_Objects/Array/slice


查看完整回答
反对 回复 2023-01-06
?
jeck猫

TA贡献1909条经验 获得超7个赞

应该是一个相当简单的单项测试——你的“做某事”功能可以根据需要设置/读取外部变量。


let myArray = [1,2,3,4,5];


let firstItem = true;

myArray.forEach(item => {

  if (firstItem != true){

    console.log(item);

  } else {

    firstItem = false;

  }

});


查看完整回答
反对 回复 2023-01-06
?
大话西游666

TA贡献1817条经验 获得超14个赞

由于 forEach 循环中有可用的计数变量,您可以手动创建一个来对其进行计数。


let count = 0;

let skipVal = 0;

cars.forEach(car => {

count++;

if (count != skipVal){

...do something

}

});


查看完整回答
反对 回复 2023-01-06
?
弑天下

TA贡献1818条经验 获得超7个赞

切片的 for循环怎么样?


const s=['car','bike','plane']

for(each of s.slice(1))console.log(each)


查看完整回答
反对 回复 2023-01-06
  • 5 回答
  • 0 关注
  • 222 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信