forEach 方法来遍历数组,不能使用break语句中断循环,也不能使用return语句返回到外层函数数组
myArray.forEach(function (value) {
console.log(value);
});
for-in 循环,不建议用在数组遍历中函数
for (var index in myArray) { // 千万别这样作 console.log(myArray[index]); }
for (var value of myArray) { console.log(value); }
for-of循环不只支持数组,还支持大多数类数组对象,例如DOM NodeList对象。编码
for-of循环也支持字符串遍历,它将字符串视为一系列的Unicode字符来进行遍历spa
Set对象能够自动排除重复项: var uniqueWords = new Set(words); for (var word of uniqueWords) { console.log(word); }
Map对象稍有不一样:内含的数据由键值对组成,因此你须要使用解构(destructuring)来将键值对拆解为两个独立的变量: for (var [key, value] of phoneBookMap) { console.log(key + "'s phone number is: " + value); }
for-of循环不支持普通对象,但若是你想迭代一个对象的属性,你能够用for-in循环(这也是它的本职工做)或内建的Object.keys()方法:prototype
// 向控制台输出对象的可枚举属性 for (var key of Object.keys(someObject)) { console.log(key + ": " + someObject[key]); }
想让jQuery对象也支持for-of循环,
jQuery.prototype[Symbol.iterator] = Array.prototype[Symbol.iterator];