JavaScript 中的各种 for
on Front-End
for
适用于 数组、计数器、字符串 的遍历。
for (var i = 0; i < array.length; i++) {
// do something
}
for in
适用于 对象属性、字符串 的遍历。尽管也可以用来遍历数组,但是不太推荐。
for (var key in object) {
// do something
}
for of
适用于 数组、对象属性、字符串 的遍历。尽管可以遍历多种数据结构,但是缺点是只有 ES5
之后可用。
for (var key of object) {
// do something
}
forEach
适用于 数组 的遍历。优点是写法简单了许多,但是缺点是只有 ES5
之后可用,并且不能用 break
和 continue
中断循环。
array.forEach(function (value, index, arr) {
// do something
});
map
适用于 数组 的遍历。与 forEach
类似,不同之处在于 map
的回调函数中支持返回值,而 forEach
不支持。
array.map(function (value, index, arr) {
// do something
return value + 1;
});
each
适用于 数组、对象属性 的遍历。依赖于 jQuery
。
$.each(object, function (index, value, arr) {
// do something
})