一般有4种方法遍历数组:
- 普通for循环
- for... in
- for each ( ES5 新增)
- for…of ( ES6新增 )
一. 使用普通for循环遍历数组
var arr = [50, 20, 10, 5, 15, 6];
for(var i = 0; i < arr.length; i++){ //数组长度多长,就遍历多少次。 循环变量作为数组的下标
console.log(arr[i]);
}
二. 使用 for...in 循环遍历数组
for-in 语句是一种精准的迭代语句,可以用来枚举对象的属性和数组的元素。
示例:
var arr = [50, 20, 10, 5, 15, 6];
// 每循环一轮,都会把数组的下标赋值给变量index,然后num就拿到了每个元素的下标。
//注意:这里index是元素的下标,不是与元素
//对数组来说,index从从0开始顺序获取下标
for (var index in arr) {
console.log(num); //循环输出: 0 1 2 3 4 5
}
//这里var 关键字也是可以省略的,但是不建议省略。
for(i in arr){
console.log(arr[i]);
}
注意:
for…in遍历数组的时候,遍历出来的是数组的下标!
三. 使用forEach方法遍历数组
ES5为每个数组新增了一个方法 array.forEach(function) ,使用这个方法,可以自动帮我们遍历数组中的所有元素
var arr = [50, 20, 10, 5, 15, 6];
//调用数组的forEach方法,传入一个匿名函数
//匿名函数接受两个参数: 参数1--迭代遍历的那个元素 参数2:迭代遍历的那个元素的下标
//可以在匿名函数内部书需要的代码
arr.forEach( function(element, index) {
alert(element);
});
四. 使用for...of遍历数组
ES6新增了for...of去遍历数组。其实是用到了迭代器(迭代器为ES6新增,后面再讲)