js中for, for in,for of,forEach循环的用法和区别

for遍历数组的方法:

 let arr = [1, 2, 5, 7, 8, 10, 11]
 for (let i = 0; i < arr.length; i++) {
        console.log(i, arr[i])
    }

js中for, for in,for of,forEach循环的用法和区别_第1张图片

for in 遍历数组

  • for in 循环得到的是数组或对象的key
let arr = [1, 2, 5, 7, 8, 10, 11]
for (let i in arr) {
     console.log(i, arr[i])
    }

js中for, for in,for of,forEach循环的用法和区别_第2张图片
for in 也可以循环对象

 let obj = {
        a: 1,
        b: 2,
        c: 3
    }
    
 for (let i in obj) {
       console.log(i, obj[i])
    }

js中for, for in,for of,forEach循环的用法和区别_第3张图片

forEach循环数组

  • 明显的缺点就是不能中断
  • 可以对数组对象进行循环,item输出的是数组的每一项对象
  • 直接得到值
let arr = [1, 2, 5, 7, 8, 10, 11]
 arr.forEach((item, i) => {
        console.log(i, item)
    })

js中for, for in,for of,forEach循环的用法和区别_第4张图片

for of 循环数组

  • ES6新增的方法
  • 直接得到值
let arr = [1, 2, 5, 7, 8, 10, 11]
for (let i of arr) {
        console.log(i)
    }

js中for, for in,for of,forEach循环的用法和区别_第5张图片
可以对字符串进行循环

let str = 'abcdf'
    for (let i of str) {
        console.log(i)
    }

js中for, for in,for of,forEach循环的用法和区别_第6张图片

你可能感兴趣的:(博客,面试,笔记,javascript,es6)