网站做资讯需要获取许可证吗wordpress搜索结果页样式
一、总结
- 相同点:都是串行遍历。
 - 不同点:

 
二、for of循环
- 设计目的:遍历所有数据结构的统一方法。
 - 原理:会调用数据结构的Symbol.iterator方法。 
- 只要数据结构定义了Symbol.iterator属性,就能用for of遍历它的成员。
 - 换句话说,只要能被for of遍历,数据结构上一定有Iterator接口。
 
 - 适用范围:数组、set、map、类数组(arguments对象、Dom NodeList对象)、生成器对象、字符串。
 - 可以中断(支持break/continue), 支持return。
 - 数组的遍历器:只返回能通过数字下标访问的属性。
 
三、for in循环
-  
为了遍历对象而设计。能够遍历数组的key。
 -  
缺点:
- 数组的索引是数字,但是for in里拿到的键值是字符串。
 - for in还会遍历数组上挂载的其他属性;如果数组原型被重写(新增变量),还会访问到原型链上的值。
 - 特殊场景:如果对象键值是数字,则会按照键值的升序来遍历。
 
 
四、map forEach
相同点:
- 为了解决for遍历数组,写法太麻烦。
 - 无法中途跳出循环。break、continue都不支持。
 
不同点:
- map支持return, 会新开辟内存接收返回值。
 - forEach不支持return, 没有返回值。
 
