一般的遍历数组的方法
var array = [1,2,3,4,5,6,7]; for (var i = 0; i < array.length; i) {console.log(i,array[i]); }
用for in的方遍历数组
const obj = {a: 1,b: 2,c: 3}for (let i in obj) {console.log(i) //a,b,c}for (let i in obj) {console.log(obj[i]) //1,2,3}
for in遍历的是数组的索引(即键名)
总结一句: for in 循环特别适合遍历对象。
forEach
array.forEach(v=>{console.log(v); });
具体可以看数组的forEach()方法总结
for of循环
let s = "helloabc"; for(let c of s) {console.log(c); }
for…of 循环用来获取一对键值对中的值,而 for in 获取的是键名.for…of一般用来遍历迭代器。比如数组 Array、Map、Set、String、伪数组(arguments对象、Nodelist对象等)。以上这些都可以直接使用 for of 循环。 凡是部署了 iterator 接口的数据结构也都可以使用数组的扩展运算符(…)、和解构赋值等操作。for of 不同与 forEach, 它可以与 break、continue和return 配合使用,也就是说 for of 循环可以随时退出循环。