在es5中for循环包含了基础for循环、for-in、for-each。在ES6中新增了循环方法 for of
基础for循环:如for(int i=0;i<5;i++){}。缺点为书写比较麻烦。注意:for循环中可以return;
for in :缺点比较明显,它不仅遍历数组中的元素,还会遍历自定义的属性,甚至原型链上的属性都被访问到。此外,它遍历效率比较低
forEach:不能 break 和 return;
for of:与 forEach 不同的是,它可以正确响应 break、continue 和 return 语句。它不仅可以遍历数组,还可以遍历类数组对象和其他可迭代对象。并且它不会遍历自定义属性,这点可以区别于for in
注意:for of无法遍历对象