2019-07-14 js中可以用break/continue跳出的循环

js中对数组、对象的遍历方法众多,但并不是每个方法都可以使用break/continue跳出循环,这些方法我们经常使用却也很容易混淆,特总结如下:

  var arr = ['beijing', 'shanghai', 'guangzhou', 'shenzhen', 'hangzhou', 'chengdu'], obj = { name: 'tom', age: 20, address: 'beijing', job: 'artist' };


    //for循环可以使用break/continue跳出循环

    for (let i = 0; i < arr.length; i++) {

        if (i == 1) continue;

        console.log(arr[i]);

        if (i == 3) break;

    }

    console.log('------------------------------')

    //forin可以使用break/continue跳出循环

    for (const key in obj) {

        if (key == 'age') continue;

        console.log(key);

        if (key == 'address') break;

    }

    console.log('------------------------------')

    //forof可以使用break/continue跳出循环

    for (let item of arr) {

        if (item == 'shanghai') continue;

        console.log(item);

        if (item == 'shenzhen') break;

    }

    console.log('------------------------------')

    //map不能使用break/continue跳出循环

    arr.map((item, i) => {

        // if (i == 1) continue;

        console.log(item);

        // if (i == 3) break;

    })

    console.log('------------------------------')

    //forEach不能使用break/continue跳出循环

    arr.forEach((item, i) => {

        //if(i == 1) continue;

        console.log(item);

        //if(i ==3) break;

    })

---------------------

所以常见的方法中 for、for in、for of可以使用break/continue跳出循环。

你可能感兴趣的:(2019-07-14 js中可以用break/continue跳出的循环)