位置:首頁 > 軟件操作教程 > 編程開發(fā) > JavaScript > 問題詳情

JavaScript 使用forEach迭代數(shù)組

提問人:劉團(tuán)圓發(fā)布時(shí)間:2020-11-25

■知識(shí)點(diǎn)

使用forEach()方法可以為數(shù)組執(zhí)行迭代操作。具體用法如下: 

array.forEach(callbackfn[, thisArg])

參數(shù)說明如下。

    callbackfn:必需參數(shù),最多可以接受3個(gè)參數(shù)的函數(shù)。forEach將為數(shù)組中的每個(gè)元素調(diào)用 callbackfn 函數(shù)一次。

    thisArg:可選參數(shù),callbackfn函數(shù)中的this可引用的對(duì)象。如果省略thisArg,則this的值為undefined。

對(duì)于數(shù)組中出現(xiàn)的每個(gè)元素,forEachO方法都會(huì)調(diào)用callbackfn函數(shù)一次,采用升序索引順序,但不會(huì)為數(shù)組中空元素調(diào)用回調(diào)函數(shù)?;卣{(diào)函數(shù)的語法如下: 

    function callbackfn(value, index, array)

最多可以使用3個(gè)參數(shù)來聲明回調(diào)函數(shù)?;卣{(diào)函數(shù)的參數(shù)說明如下。

    value:數(shù)組元素的值。

    index:數(shù)組元素的數(shù)字索引。 

    array:包含該元素的數(shù)組對(duì)象。

■實(shí)例設(shè)計(jì)

【示例1】下面的示例使用forEach迭代數(shù)組a,然后把每個(gè)元素的值和下標(biāo)索引輸出顯示。

function f(value, index, array) {

    console.log ( "a[" + index + "] = " + value )

}

var a = ['a', 'b', ' c']; 

a.forEach(f);

【示例2】下面的示例使用forEach迭代數(shù)組a,然后計(jì)算數(shù)組元素的和并輸出。

var a = [10, 11, 12], sum = 0; 

a.forEach(function(value){ 

    sum += value;

});

console. log (sum) ;        //返回33

【示例3】下面的示例演示如何使用foeEachO方法的第2個(gè)參數(shù),該參數(shù)為回調(diào)函數(shù)的this傳遞對(duì)象。當(dāng)?shù)鷶?shù)組過程中,先讀取數(shù)組元素的值,然后再改寫它的值。

var obj = {

    fl: function(value, index, array)(

        console.log( "a[" + index + "] = " + value );

        array[index] = this.f2(value);

    },

    f2: function (x) { return x * x }

};

var a = [12, 26, 36];

a.forEach(obj?f1, obj);

console.log (a);       //返回[144,676, 1296]

繼續(xù)查找其他問題的答案?

相關(guān)視頻回答
回復(fù)(0)
返回頂部