for in方法的使用,它可以遍历对象,或者数组(大部分用于遍历对象使用)
let arr = [5,6,7,8]
let obj={a:1,b:2,c:3,d:4}
//遍历数组
for(let i in arr){
consloe.log(i)//这里输出的是数组arr当前的下标0 1 2 3
consloe.log(arr[i])//这里输出的就是数组arr里边的每个元素 5 6 7 8
}
//遍历对象
for(let key in obj){
consloe.log(key)//这里输出的是对象obj的key a b c d
consloe.log(obj[key])//这里输出的就是每个key对应的值 1 2 3 4
}
for of 方法的使用,不能用于遍历对象
for(let item of arr){
consloe.log(item )//这里直接输出的是数组arr里边的每个元素 5 6 7 8
}
for Each方法的使用,不能用于遍历对象,该方法不能使用break,continue语句跳出循环,或者使用return从函数体返回,对于空数组不会执行回调函数
arr.forEach(function(v, i) {
console.log(v) //这里输出的是数组arr中的每个元素
console.log(i) //这里输出的是数组arr中的每个元素所对应的下标
})