forEach()方法按升序為每個數(shù)組元素執(zhí)行一次提供的函數(shù)(回調(diào)函數(shù))。
除了拋出異常外,沒有其他方法可以停止或中斷forEach()循環(huán)。
如果想提前終止,可以通過使用以下方式完成:
一個簡單的循環(huán)
一for......of循環(huán)
array.forEach(callback, thisArg)
var fruits = ["Apple", "Mango", "Banana", "Orange"];
var result = document.getElementById("result");
fruits.forEach(function(element) {
result.innerHTML += element + "<br>";
});測試看看?/?表中的數(shù)字指定了完全支持forEach()方法的第一個瀏覽器版本:
| 方法 | ![]() | ![]() | ![]() | ![]() | ![]() |
| forEach() | 是 | 1.5 | 是 | 是 | 9 |
| 參數(shù) | 描述 |
|---|---|
| callback | 為數(shù)組中的每個元素運行的函數(shù)。 函數(shù)參數(shù):
|
| thisArg | (可選)執(zhí)行回調(diào)時用作此對象 |
| 返回值: | 未定義 |
|---|---|
| JavaScript版本: | ECMAScript 5 |
回調(diào)函數(shù)最多可以包含3個參數(shù):
var fruits = ["Apple", "Mango", "Banana", "Orange"];
var result = document.getElementById("result");
fruits.forEach(function(element, index, array) {
result.innerHTML += index + ": " + element + "<br>";
});測試看看?/?獲取數(shù)組中所有值的總和:
var nums = [2, 5, 10, 5, 10, 28];
var sum = 0;
nums.forEach(function(element) {
sum += element;
});
document.getElementById("result").innerHTML = sum;測試看看?/?獲取數(shù)組中值的平均值:
var nums = [2, 5, 10, 5, 10, 28];
var sum = 0;
nums.forEach(function(element) {
sum += element;
});
document.getElementById("result").innerHTML = sum / nums.length;測試看看?/?將forEach循環(huán)轉(zhuǎn)換為for循環(huán):
var nums = [2, 5, 10, 5, 10, 28];
var sum = 0;
for (let i=0; i < nums.length; i++) {
sum = sum + nums[i];
});
document.getElementById("result").innerHTML = sum;測試看看?/?