循环

forEach 循环无法中途跳出,break 命令或 return 命令都不能奏效
for...of 循环可以与break、continue 和 return 配合使用,跳出循环

遍历数组用of
var arr = ['red', 'green', 'blue']
 
for(let item in arr) {
  console.log('for in item', item)
}
/*
  for in item 0
  for in item 1
  for in item 2
*/
 
for(let item of arr) {
  console.log('for of item', item)
}
/*
  for of item red
  for of item green
  for of item blue
*/
遍历对象用in
var obj = {
   'name': 'Jim Green',
   'age': 12
 }
for(let key in obj) {
   console.log('for in key', key)
 }
 /*
   for in key name
   for in key age
 */


let obj = {a: '1', b: '2', c: '3', d: '4'}
for (let o in obj) {
    console.log(o)    //遍历的实际上是对象的属性名称 a,b,c,d
    console.log(obj[o])  //这个才是属性对应的值1,2,3,4
}

总之,for...in 循环主要是为了遍历对象而生,不适用于遍历数组

for...of 循环可以用来遍历数组、类数组对象,字符串、Set、Map 以及 Generator 对象

遍历对象
for (var key in listAll) {
console.log(key)
console.log(obj[key])
keys.push(key);
values.push(obj[key]); //取得value
}

image.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容