1.for循环

    1. var a = [1,2,3,4]
    2. for(var i = 0; i < a.length; i++) {
    3. console.log(i)
    4. }

    语法缺点:写法比较麻烦

    2.forEach方法

    1. var a = [1,2,3,4]
    2. a.forEach(value => {
    3. console.log(value); //1,2,3,4
    4. })

    语法缺点:遍历中途无法跳出循环,break或return等命令都不能奏效

    3.for…in 循环

    1. var a = ['zhangsan','lisi','wangwu','chenliu']
    2. for(var v in a) {
    3. console.log(v); //1,2,3,4 键名
    4. }

    语法缺点:
    for…in 循环不仅遍历数字键名,还会遍历手动添加的其他键,甚至包括原型链上的键
    某些情况下,for…in 循环会以任意顺序遍历键名

    for…in 循环适合遍历对象,不适合遍历数组

    4.for…of 循环

    1. var a = [1,2,3,4]
    2. for(var v of a) {
    3. console.log(v) //1,2,3,4
    4. }

    语法优点:
    语法简洁
    它可以和break、return等命令配合使用
    提供了遍历所有数据结构的统一操作接口