1. 1.使用for循环或者for in 循环 breakk
    2. for(let i=0;i<10;i++){
    3. console.log(i)
    4. if(i==3)break //0123
    5. }
    6. 2.map,forEach,filter使用try catch 抛出异常中止循环
    7. let arr = [1,2,3,4]
    8. try{
    9. arr.forEach(item => {
    10. console.log(item)
    11. if(item == 3){
    12. console.log('中止循环....')
    13. throw '中止'
    14. }
    15. })
    16. }catch{
    17. }
    18. 3.MDN官方推荐的方法every在碰到return false的时候,中止循环。
    19. some在碰到return ture的时候,中止循环。
    20. every() 方法测试一个数组内的所有元素是否都能通过某个指定函数的测试。它返回一个布尔值。
    21. every若收到一个空数组,此方法在一切情况下都会返回 true
    22. some() 方法测试数组中是不是至少有1个元素通过了被提供的函数测试。它返回的是一个Boolean类型的值
    23. 备注:如果用一个空数组进行测试,在任何情况下它返回的都是false
    24. let arr = [{name:'李四'},{name:''},{name:"张三"}]
    25. arr.every(item => {
    26. console.log(1,item.name)
    27. if(item.name == ''){
    28. console.log(2,item.name)
    29. return false
    30. }
    31. })
    32. //输出结果1 '李四' 2不执行
    33. let arr = [{name:'李四'},{name:"王五"},{name:''},{name:"张三"}]
    34. arr.some(item => {
    35. console.log(1,item.name)
    36. if(item.name == ''){
    37. console.log(2,item.name)
    38. return true
    39. }
    40. })
    41. //输出结果 1 '李四' 》1 '王五'》 1 '' 》 2 ''
    42. 需要中止循环推荐采用some return true 中止循环 可以修改原数组每一项是对象型里面的属性
    43. let arr = [{name:'李四'},{name:"王五"},{name:''},{name:"张三"}]
    44. arr.some(item => {
    45. if(item.name == '李四'){
    46. item.name = 'lisi'
    47. }
    48. item.type = '姓名'
    49. if(item.name == ''){
    50. console.log('请输入姓名')
    51. return true
    52. }
    53. console.log(1,item.name)
    54. })
    55. 输出结果:1 'lisi'
    56. 1 '王五'
    57. 请输入姓名
    58. 不给结束条件也可以实现forEach遍历没一项
    59. let arr = [{name:'李四'},{name:"王五"},{name:''},{name:"张三"}]
    60. arr.some(item => {
    61. console.log(1,item.name)
    62. })
    63. 输出结果:1 '李四'1 '王五'1 ''1 '张三'