最近一直在对数据处理,循环匹配之类的,我的mentor也已经多次指出一个问题,就是在循环里面用if去判断一个数值是否存在的时候,只要找到就要退出,这个时候就要对循环的语法提出了要求;

1.for in 在我的印象里,从一开始接触for in就是用它来遍历一个对象,但是现在在使用的时候,好多时候也用在了array的处理上,结果也是正确的,但是刚刚发现了一个帖子是这样的问题

  for (var index in myArray) {} 此时,index是一个string类型的字符串,不能直接对index进行运算,只能通过转换类型;

   其次,文章指出,for in 在循环的时候有时候是无序的循环(这个我目前还没有遇到问题,无序的我还没有考虑过)

   最后,不能使用break;

2.foreach

  ES5中出现的比较稳定的,循环遍历对象的时候经常用到这个用于替代for,但是有一点,它也不支持break,这有时候就尴尬了,只能乖乖的换成for循环(表示已经改了2次这样的问题,虽然结果都是对的,但是加break提高了效率,避免了无用的循环)

3.for of

  for of这个是刚刚发现的新大陆,感觉它包含了以上他们所有的优点(也有不足),它主要作用于数组,类数组对象,甚至也可以用在字符串上,最可以的是可以添加break,continue,return,总的来说,它是可以遍历数组中数据的(数据可以为单值)。

文档说现在火狐是支持,谷歌也是支持,但是需要自己设置

(当前所有的Firefox releases版本都支持for-of循环。如果你想在Chrome中使用,到chrome://flags设置“Experimental JavaScript”为“开启”即可。微软的Spartan浏览器支持它,但是IE不支持。如果你想要在Web中使用这些新语法且不用考虑支持IE和 Safari,你可以使用Babel或者谷歌的Traceur这样的编译器将你的ES6代码转换成兼容性友好的ES5)

准备在接下来的项目中使用这个for Of一次,看看效果到底怎么样,要是截止目前谷歌或者Safari还是不支持,那就又要改了,还是试试再说吧!

最新文章

  1. 原生态ajax 传递json参数到服务器端
  2. 用caffe跑自己的数据,基于WINDOWS的caffe
  3. Android录音应用
  4. 监控web页面的性能指标。
  5. jquery checkbox反复调用attr('checked', true/false)只有第一次生效
  6. Android 使用NDK编译sipdroid Library
  7. android开发中系统自带语音模块的使用
  8. javascript 编程技巧
  9. Intellij IDEA使用Maven构建Scala项目
  10. Asp.net中实现同一用户名同时登陆,注销先前用户(转)
  11. 细谈UITabBarController
  12. WebSocket 详解教程
  13. RabbitMQ Linux(Redhat6.5)安装(二 )
  14. EBS管理员为供应商创建新联系人流程
  15. vue 之 Vue.extend()
  16. checked和unchecked的区别
  17. OpenCV学习(31) 基于defects的简单手势
  18. Android理解:Activity状态和生命周期
  19. OCP 052题库全变,最新052考试题及答案整理-第11题
  20. centos7安装java开发环境

热门文章

  1. [课程设计]Sprint Two 回顾与总结&发表评论&团队贡献分
  2. HDU Machine scheduling
  3. Android属性动画完全解析(下)
  4. 【Session】Tomcat中Session的外置
  5. Python3基础 index 返回一个元素在列表中第一次出现的索引值
  6. ZIP等
  7. sql_树形查询
  8. Android Studio build dex jar
  9. 邮箱输入(仿gmail)
  10. 从欧几里得距离、向量、皮尔逊系数到http://guessthecorrelation.com/