1. 程式人生 > >forEach for 迴圈

forEach for 迴圈

前言:foreach 語句為 陣列或物件集合中的每個元素重複一個嵌入語句組。foreach 語句用於迴圈訪問集合以獲取所需資訊,但不應用於更改集合內容以避免產生不可預知的副作用。 能夠應用的程式語言類別:Java、C# 、PHP、D語言(Phobos庫)。 定義和用法

forEach() 方法用於呼叫陣列的每個元素,並將元素傳遞給回撥函式。

注意: forEach() 對於空陣列是不會執行回撥函式的。

語法

array.forEach(function(currentValue, index, arr), thisValue)

引數 描述
currentValue 必需。當前元素
index 可選。當前元素的索引值。
arr 可選。當前元素所屬的陣列物件。
thisValue 可選。傳遞給函式的值一般用 "this" 值。
如果這個引數為空, "undefined" 會傳遞給 "this" 值

例項&&註釋

foreach有的也叫增強for迴圈,foreach其實是for迴圈的一個特殊簡化版。

forEach是ES5中運算元組的一種方法,主要功能是遍歷陣列,例如:

var  arr = [1,2,3,4]; arr.forEach(alert);

 等價於:

var  arr = [1, 2, 3, 4]; for  ( var  k = 0, length = arr.length; k < length; k++) {   alert(array[k]); }

forEach方法中的function回撥有三個引數:第一個引數是遍歷的陣列內容,第二個引數是對應的陣列索引,第三個引數是陣列本身

因此:

如 1:

let numbers = [65, 44, 12, 4];

numbers.forEach(function (item){//  numbers 當前元素所屬的陣列物件  item 指array型別裡的每個元素
sums.innerHTML = item;//4 顯示最後一個元素,因為後面的元素會把前面顯示的資料覆蓋掉
console.log(item);//65  44  12  4  item 指numbers 裡的每個元素
let sum += item;});

如 2:

[].forEach(function(value,index,array){

    // code  something   });   var  arr = [1,2,3,4]; arr.forEach( function (value,index,array){      array[index] == value;     //結果為true      sum+=value;        }); console.log(sum);     //結果為 10    jQuery 中forEach    $.each([],function(index,value,array){      // code  something    })