for循环
for循环是最常见的循环方法,for里面有三个值,分别是初始值,终止条件,递增条件,不满足终止条件,就会执行循环,然后递增执行。
let arr = [1,2,3]
for (let i =0;i<arr.length;i++){
console.log(arr[i])
}
for in循环
for ... in 循环,常用来遍历对象的所有key,间接也可获取对象的value值
let obj = {
name:'zhangsan',
age:18
}
for(let key in obj){
console.log(key)
console.log(obj[key])
}
for of 循环
for of循环常用来遍历数组,他只能遍历数组的值,不能获取数组的key。
let arr = ['a','b','c']
for(let key of arr){
console.log(key)
}
forEach
遍历数组,数组的每一个元素,都作为参数去执行一边forEach的回调。
let arr = ['a','b','c']
arr.forEach(item=>{
console.log(item)
})
面试重点:for of和for in的区别
- 推荐在遍历对象的时候使用for in ,在遍历数组的时候使用for of 。
- for in 循环出的是key(并且key的类型是string),for of 循环出的是value。
- for of 是es6引新引入的特性,修复了es5引入的for in 的不足。
- for of 不能循环普通的对象,需要通过Object.keys搭配使用。