js 中的五種迭代方法

2022-07-09 17:33:11 字數 1678 閱讀 1728

ecmascript 為陣列定義了五個迭代方法。

每個方法都接收兩個引數:要在每一項上執行的函式和(可選的)執行該函式的作用域物件——影響this的值。

傳入這些方法中的函式會接收三個引數:陣列項的值、該項在陣列中的位置和陣列物件本省。

根據使用的方法不同,這個函式執行後的返回值可能會也可能不會影響方法的返回值。

以下是這五個迭代方法的作用。

1、every();

對陣列中的每一項執行給定函式,如果該函式對每一項都返回true,則返回true。2、some();

對陣列的每一項執行給定函式,如果該函式對任一項返回true,則返回true。

var numbers = [1, 2, 3, 4, 5, 4, 3, 2, 1];

var everyresult = numbers.every(function

(item, index, array))

console.log(everyresult);

//false

var someresult = numbers.some(function

(item, index, array) )

console.log(someresult);

//true

3、filter(); 

對陣列中的每一項執行給定函式,返回改函式會返回true的項組成的陣列。

var numbers = [1, 2, 3, 4, 5, 4, 3, 2, 1];

var filterresult = numbers.filter(function

(item, index, array) )

console.log(filterresult);

//[4, 5, 4]

4、map(); 

對陣列中的每一項執行給定函式,返回每次函式呼叫的結果組成的陣列。

var numbers = [1, 2, 3, 4, 5, 4, 3, 2, 1];

var mapresult = numbers.map(function

(item, index, array) )

console.log(mapresult);

//[2, 4, 6, 8, 10, 8, 6, 4, 2]

5、foreach(); 

對陣列中的每一項執行給定的函式,該方法沒有返回值,本質上與使用for迴圈迭代陣列一樣。

var numbers = [1, 2, 3, 4, 5, 4, 3, 2, 1];

numbers.foreach(

function

(item, index, array) )

原文路徑:

js陣列的五種迭代方法

函式都接收三個引數 陣列中的每一項 每一項的索引值 陣列物件本身 下面是5種方法的介紹 every 對陣列中的每一項執行函式,如果每一項都返回 true 則該方法返回 true。some 對陣列中的每一項執行函式,只要有一項返回了 true 則該方法返回 true。filter 對陣列中的每一項執行...

js 中的五種繼承方法

function super super.prototype.sayname function function sub sub.prototype new super var instance new sub instance.sayname 小明 當超類中包含引用型別屬性值時,其中乙個子類的多個...

js 中的五種繼承方法

function super super.prototype.sayname function function sub sub.prototype new super var instance new sub instance.sayname 小明 當超類中包含引用型別屬性值時,其中乙個子類的多個...