JS数组遍历方法every()和some()的实用技巧

為{幸葍}努か 提交于 2020-03-10 05:56:57

使用every和some代替forEach

因为forEach可以用return进行类似for循环中continue的功能,但for循环中break的功能无法实现,而every和some都通过控制return的值来控制循环中断跳出break。

具体做法是:

every方法返回值是布尔类型,最终返回值为true需要每一次回调函数返回值都为true,如果某一次回调函数返回值为false则every方法结束对数组的遍历并返回false,所以在想要跳出循环时回调函数return false,因为every会对callback回调函数中的返回值做的判断处理类似于&&。

some方法返回值是布尔类型,最终返回值为true只需要任意一次回调函数返回值为true就会结束对数组的遍历,如果每一次回调函数返回值都为false的话则some方法就会一直遍历辖区并返回false,所以在想要跳出循环时回调函数return true,因为some会对callback回调函数中的返回值做的判断处理类似于||。

实际运用中,如果希望跳出循环时得到的判断值为true的话则用some,如果希望跳出循环时得到的判断值为false的话则用every。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!