JavaScript 迭代数组的方式
在本文中,我们将学习如何使用JavaScript迭代数组。有多种方法可以实现这一点。JavaScript中的数组是用于存储不同类型元素的单个变量。
JavaScript中迭代数组的方式有很多。它们包括:
- 使用for循环
- 使用while循环
- 使用forEach()方法
- 使用every()方法
- 使用reduce()方法
- 使用some()方法
示例: 在这个示例中,我们将使用索引号访问简单的数组元素。
let array = ['geeks', '4', 'geeks'];
// Accessing array elements one by one
console.log(array[0]);
console.log(array[1]);
console.log(array[2]);
输出
geeks
4
geeks
JavaScript 中有多种方法可以迭代数组。以下是最有用的几种方法。
使用 for 循环
for 循环根据给定的条件重复执行一组指令,直到条件变为 false。它类似于其他语言(如 C/C++、Java 等)中的 for 循环。
let array = [1, 2, 3, 4, 5, 6];
for (let index = 0; index < array.length; index++) {
console.log(array[index]);
}
输出
1
2
3
4
5
6
使用while循环
在JavaScript中,while循环是一种控制流语句,根据给定的布尔条件,允许代码重复执行。
let index = 0;
let array = [1, 2, 3, 4, 5, 6];
while (index < array.length) {
console.log(array[index]);
index++;
}
输出
1
2
3
4
5
6
使用 forEach() 方法
forEach 方法按顺序为数组的每个元素调用提供的函数一次。
let index = 0;
let array = [1, 2, 3, 4, 5, 6];
array.forEach(myFunction);
function myFunction(item, index) {
console.log(item);
}
输出
1
2
3
4
5
6
使用every() 方法
every() 方法检查数组中的所有元素是否通过测试(由函数提供)。
let x = 0;
let array = [1, 2, 3, 4, 5, 6];
const under_five = x => x < 5;
if (array.every(under_five)) {
console.log('All are less than 5');
}
else {
console.log('At least one element is not less than 5');
}
输出
At least one element is not less than 5
使用 map() 方法
map() 方法会对每个元素应用一个函数,然后返回新的数组。
let x = 0;
let array = [1, 2, 3, 4, 5, 6];
let square = x => Math.pow(x, 2);
square = array.map(square);
console.log(array);
console.log(square);
输出
[ 1, 2, 3, 4, 5, 6 ]
[ 1, 4, 9, 16, 25, 36 ]
使用Filter() 方法
它用于从数组中过滤值并返回新过滤后的数组。
let array = [1, 2, 3, 4, 5, 6];
let even = x => x % 2 === 0;
let evens = array.filter(even);
console.log(array);
console.log(evens);
输出
[ 1, 2, 3, 4, 5, 6 ]
[ 2, 4, 6 ]
使用reduce()方法
它用于使用一些函数逻辑将数组减少为一个单一的值。
let array = [1, 2, 3, 4, 5, 6];
const helperSum = (acc, curr) => acc + curr;
const sum = array.reduce(helperSum, 0);
console.log(array)
console.log(sum);
输出
[ 1, 2, 3, 4, 5, 6 ]
21
使用some()方法
用于检查一些数组值是否通过了测试。
let array = [1, 2, 3, 4, 5, 6];
const lessthanFourCheck = (element) => element < 4;
const lessthanFour = array.some(lessthanFourCheck);
console.log(array);
if (lessthanFour) {
console.log("At least one element is less than 4")
} else {
console.log("All elements are greater than 4 ")
}
输出
[ 1, 2, 3, 4, 5, 6 ]
At least one element is less than 4