for是ES5里做数组循环里最常用的

        for (var i = 0; i < array.length; i++) {
// todo
}

  for...in是ES5里用来遍历对象属性用的

var obj = {a:1, b:2, c:3};

for (var prop in obj) {
console.log("obj." + prop + " = " + obj[prop]);
}

  注意,数组索引只是具有整数名称的枚举属性,并且与通用对象属性相同。不能保证for ... in将以任何特定的顺序返回索引。for ... in循环语句将返回所有可枚举属性,包括非整数类型的名称和继承的那些。

因为迭代的顺序是依赖于执行环境的,所以数组遍历不一定按次序访问元素。因此当迭代访问顺序很重要的数组时,最好用整数索引去进行for循环(或者使用 Array.prototype.forEach() 或 for...of 循环)。

in是用来判断某变量是否是对象的属性key-value的key的

    var obj = {
w: 'wen',
j: 'jian'
} var result = ("j" in obj); //true

  for...of是ES6新增的,用来遍历具有Iterator接口的数据结构。

参考资料:

http://sunct.iteye.com/blog/1709017

https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Statements/for...in

最新文章

  1. Java Netty 4.x 用户指南
  2. 20161106PM-Fiddler
  3. Struts2(十五)实现文件上传
  4. Apache James搭建内网邮件服务器
  5. Android开发之在子线程中使用Toast
  6. 网站资料收集 主要查看js的学习部分
  7. scrollView的几个属性contentSize contentOffset contentInset
  8. HDU 2604 - Queuing
  9. php fsockopen例子
  10. 【字符串】ZSC-字符串编辑
  11. 一个小误区 JS中的contains
  12. sync;sync;sync;reboot
  13. laravel表单操作
  14. 用python写个简单的小程序,编译成exe跑在win10上
  15. linux每日命令(39):lsof命令
  16. jack welch:“你们知道了,但是我们做到了”
  17. 跳台阶(python)
  18. Spring中ApplicationEvent和ApplicationListener封装
  19. 在selenium中使用css选择器进行元素定位
  20. Spring Boot 中 Controller 使用

热门文章

  1. Altium Designer中Electrical Type的意思
  2. PHP与Linux进程间的通信
  3. 一起talk C栗子吧(第八回:C语言实例--素数)
  4. 学习redis--安装(二)
  5. 126邮件POP3,SMTP服务器与端口设置
  6. 使用ClassyShark压缩你的项目
  7. mysql的入门基础操作
  8. js课程 2-8 js内置对象有哪些
  9. CImage将图片转为指定像素大小
  10. php实现数值的整数次方