微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

javascript – 打破内在的foreach循环

我试图使用JavaScript / jQuery打破内部foreach循环.

result.history.forEach(function(item) {
    loop2:
    item.forEach(function(innerItem) {
        console.log(innerItem);
        break loop2;
    });
}); 

这导致错误’Unidentified label loop2′.它似乎是在循环之前,这是其他问题所说的问题.

我做错了什么,我该如何解决

编辑:正确,foreach循环不能以这种方式打破,但一个常规for循环可以.这是有效的:

                        result.history.forEach(function(item) {
                            loop2:
                            for (var i = 0; i < item.length; i++) {
                                var innerItem = item[i];
                                console.log(innerItem);
                                break loop2;
                            }
                        });

解决方法:

如果您需要能够中断迭代,请使用.every()而不是.forEach():

someArray.every(function(element) {
  if (timetoStop(element)) // or whatever
    return false;
  // do stuff
  // ...
  return true; // keep iterating
});

您可以翻转true / false逻辑并使用.some()代替;同样的基本想法.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐