前言Array 數(shù)組遍歷的幾種方式 普通for循環(huán)循環(huán)遍歷基礎(chǔ)語法 for(var i = 0; i < arr.length; i++){ ... }
使用示例 var arr1 = ['hello', 'world', 'aa']; for (var i=0; i<arr1.length; i++){ console.log(i) // 下標(biāo) console.log(arr1[i]) // 成員 }
運行結(jié)果
for…infor...in 循環(huán)的是數(shù)組下標(biāo),語法結(jié)構(gòu)
for(var index in arr){ ... }
示例 var arr1 = ['hello', 'world', 'aa']; for (var index in arr1){ console.log(index); // 下標(biāo) console.log(arr1[index]) }
運行結(jié)果
for…offor...of 循環(huán)的是數(shù)字成員,語法結(jié)構(gòu)
for(var item of arr){ ... }
使用示例 var arr1 = ['hello', 'world', 'aa']; for(var item of arr1){ console.log(item) // 成員 }
forEachforEach 只有數(shù)組對象才有此方法, forEach() 方法用于調(diào)用數(shù)組的每個元素,并將元素傳遞給回調(diào)函數(shù)。 注意: forEach() 對于空數(shù)組是不會執(zhí)行回調(diào)函數(shù)的。 array.forEach(function(currentValue, index, arr), thisValue)
forEach() 中可以傳2個參數(shù),其中function(currentValue, index, arr) 是必需。數(shù)組中每個元素需要調(diào)用的函數(shù)。 | function 參數(shù) | 說明 | | —————— | ———————- | | currentValue | 必需。當(dāng)前元素 | | index | 可選。當(dāng)前元素的索引值。 | | arr | 可選。當(dāng)前元素所屬的數(shù)組對象。| 基礎(chǔ)語法結(jié)果 var arr1 = ['hello', 'world', 'aa']; arrObj.forEach(function(item, index, obj){ // item 遍歷出的每一個元素 // index 元素對應(yīng)的下標(biāo) // obj 數(shù)組本身 })
使用示例 var arr1 = ['hello', 'world', 'aa']; arr1.forEach(function(item, index, obj){ console.log(item) // item 遍歷出的每一個元素 console.log(index) // index 元素對應(yīng)的下標(biāo) console.log(obj) // obj 數(shù)組本身 console.log(obj.length) // obj 數(shù)組本身 })
其中thisValue是可選。它表示傳遞給函數(shù)的值一般用 “this” 值。當(dāng)沒有thisValue 參數(shù)時,在函數(shù)內(nèi)部this指的是window對象 var arr1 = ['hello', 'world', 'aa'];
person = { name: 'yoyo', age: 22, words: function () { arr1.forEach(function (item) { console.log(this) // window }) } } person.words();
此時this指的是window對象 forEach傳第二個參數(shù)thisValue是時, this才會指向外面的person對象 var arr1 = ['hello', 'world', 'aa'];
person = { name: 'yoyo', age: 22, words: function () { arr1.forEach(function (item) { console.log(this) // window }) }, info: function () { arr1.forEach(function (item) { console.log(this) // person }, this) } } person.words(); person.info();
遍歷數(shù)組有很多方法,以上四種最常用,其中forEach是只有數(shù)組中才有的方法。
2022年第 11 期《python接口web自動化+測試開發(fā)》課程,6月5號開學(xué)! 2022年第 1 期《Python 測試平臺開發(fā)》課程
|