为每个简化es6代码段

时间:2017-07-19 22:47:12

标签: javascript ecmascript-6

我正在尝试使用forEach在javascript(es5)中找到更好的方法来编写此代码段(解析对象)。

isCurrentUserIsInSubPeriod(){
    let itemFounded = false
    obj.forEach(data => {
      if (data.check)
        itemFounded = true
    });
    return itemFounded
}

2 个答案:

答案 0 :(得分:5)

您可以改为使用Array.some

isCurrentUserIsInSubPeriod(){
    return obj.some(data => data.check);
}

答案 1 :(得分:0)

如果要使用es5语法迭代对象,则应使用for-in循环。 for each方法只应与数组一起使用。构建语句其余部分的最简洁方法是使用三元表达式。

isCurrentUserIsInSubPeriod(){
  let itemFounded = false;
  for (data in obj) {
    data.checked ? itemFounded =  true : itemFounded = false;
  }
  return itemFounded;
}