首页 > 其他分享 >for in 和 for of 的区别

for in 和 for of 的区别

时间:2022-12-09 11:56:51浏览次数:63  
标签:遍历 console log 区别 let key obj

for of 和 for in都是用来遍历的属性

区别:

  1. for...in 语句用于遍历数组或者对象的属性(对数组或者对象的属性进行循环操作)。
  2. for in得到对对象的key或数组,字符串的下标
  3. for offorEach一样,是直接得到值
  4. for of不能用于对象

两者对比

1.遍历对象

//for...of..遍历对象会报错 他遍历,需要遍历器Iterator
原因 https://blog.csdn.net/WDCCSDN/article/details/81076397?ops_request_misc=&request_id=&biz_id=102&utm_term=%E4%B8%BA%E4%BB%80%E4%B9%88%20for..of...%E4%B8%8D%E8%83%BD%E9%81%8D%E5%8E%86%E5%AF%B9%E8%B1%A1&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduweb~default-0-81076397.142^v68^control,201^v4^add_ask,213^v2^t3_esquery_v2&spm=1018.2226.3001.4187
const obj = {
        a: 1,
        b: 2,
        c: 3
    }
    for (let i in obj) {
        console.log(i)    //输出 : a   b  c
    }
    for (let i of obj) {
        console.log(i)    //输出: Uncaught TypeError: obj is not iterable 报错了
    }
  //可以这样写
for( var key of Object.key(obj)){
console.log(key + ":" +obj[key])
}
  

2.遍历数组

   const arr = ['a', 'b', 'c']
   // for in 循环
   for (let i in arr) {
       console.log(i)         //输出  0  1  2
   }
   
   // for of
   for (let i of arr) {
       console.log(i)         //输出  a   b   c
   }

 

标签:遍历,console,log,区别,let,key,obj
From: https://www.cnblogs.com/szx911/p/16968518.html

相关文章

  • uniapp中的@tap和@click的区别
    在HbuilderX中,两者都是点击时触发事件;不同的是:1.@click是组件被点击时触发,会有约300ms的延迟(内置处理优化了)2.@tap是手指触摸离开时触发,没有300ms的延迟,但是会员事件......
  • 1分钟理清楚C++类模板和模板类区别
    1、定义区别    类模板和模板类主要关注点是后一个单词。类模板:主要描述的是模板,这个模板是类的模板。可以理解为一个通用的类,这个类中的数据成员,成员函数的形参类型......
  • 信号量与互斥量的区别
    多任务间同步的方式包括关中断,调度器上锁,互斥量(mutex),信号量,消息队列几种,其中互斥量和信号量使用使用方式相近,连概念和实现都有些近似,所以没有扎实操作系统背景知识的......
  • day46 6-14 mybatis#{}与$的区别、一二级缓存 & 6-15 事务管理 & SSM三大框架简单回顾
    mybatis——OGNL表达式(mapperxml文件内if标签内)OGNL全称Object-GraphNavigationLanguage,是Java中的一个开源的表达式语言,用于访问对象数据。也是mybatis实现动态......
  • DBJ,DB,CJJ,CECS 标准区别及全套下载教程
    DBJDBJ开头的标准是地方建筑标准:D——地方、B——标准、J——建筑。《中华人民共和国标准化法》将中国标准分为国家标准、行业标准、地方标准(DB)、企业标准(Q/)四......
  • 什么是SHA系列算法,SHA-1和MD5算法有什么区别
    有些朋友在研究微信支付接口的时候,发现它们不仅支持MD5摘要的验签,还支持SHA-256摘要。那么这个SHA是什么呢?别着急,本文将和大家说一说什么是SHA系列算法,SHA这么多版本之间有......
  • 什么是SHA系列算法,SHA-1和MD5算法有什么区别
    有些朋友在研究微信支付接口的时候,发现它们不仅支持MD5摘要的验签,还支持SHA-256摘要。那么这个SHA是什么呢?别着急,本文将和大家说一说什么是SHA系列算法,SHA这么多版本之间有......
  • 什么是SHA系列算法,SHA-1和MD5算法有什么区别
    有些朋友在研究微信支付接口的时候,发现它们不仅支持MD5摘要的验签,还支持SHA-256摘要。那么这个SHA是什么呢?别着急,本文将和大家说一说什么是SHA系列算法,SHA这么多版本之间有......
  • json.load 和json.dump的转换区别
     示例如下:importjson"""当进行预期和时间结果比对是,有些参数结果为null,但是python语言是不认识null的,只认识None,所以,要进行转换;"""ss='{"user":"python","passwd":"1......
  • $router 和 $route 的区别
    1.this.$router:表示全局路由对象,项目中通过router路由参数注入路由之后,在任何一个页面都可以通过此方法获取到路由器对象,并调用其push(),go()等方法;这个router......