遍歷陣列,遍歷物件的方法

2021-09-26 11:17:28 字數 2545 閱讀 3309

遍歷陣列:

方法1: for 迴圈;(使用臨時變數將陣列長度快取起來,避免重複獲取陣列長度)

for(var i = 0, leng = arr.length; i < leng;i++){}
方法2:foreach迴圈;遍歷陣列中的每一項,沒有返回值,對原陣列沒有影響,不支援ie

arr.foreach((item,index,arry)=>)
方法3:map迴圈;有返回值,可以return;可以對當前項進行運算後返回;

var arr = [1,2,3,4,5,6]

var res = arr.map((item,index,arr)=>)

console.log(arr); // [1,2,3,4,5,6]

console.log(res); // [10,20,30,40,50,60]

方法4:for...of 迴圈 ;可以正確相應break, continue, return 語句;

for(var i of arr){}
方法5:filter遍歷;不改變原始陣列,返回新的陣列;

var arr = [1,2,3,4,5]

arr.filter(res=>

})

方法6:every遍歷; every()是對陣列中的每一項執行給定函式,如果該函式對每一項返回true,則返回true; 在執行的過程中,如果遇到了false的情況,就停止繼續往下執行;直接返回false;

var arr = [1,2,3,5,6,7]

var res = arr.every((item,index,arr)=>)

console.log(res); // false

方法7:some遍歷:some()是對陣列中的每一項執行指定函式;該函式對其中任意一項返回true, 就返回true; 返回true就不再往下執行;

var arr = [1,2,3,5,6,7]

var res = arr.some((item,index,arr)=>)

console.log(res)

方法8:reduce() 接收乙個函式做為累加器;將數字型別的陣列中的每一項進行運算;

var arr = [0, 1, 2, 3, 4];

var res = arr.reduce(function(previousvalue, currentvalue, index, array));

console.log(res) // 10

方法9:reduceright: 該方法類似於reduce();只不過是該方法是從陣列的末尾向前做運算;

方法10: find() 返回陣列中符合條件的第乙個元素;沒有就返回undefined;

var arr = [1,2,34,5]

var res = arr.find(item=>)

console.log(res) // 34

方法11: findindex 返回符合條件的第乙個元素的下標

var res = [1,2,3].findindex(x => );

console.log(res) // 1

方法12:keys,values,entries

es6 提供三個新的方法 —— entries(),keys()和values() —— 用於遍歷陣列。它們都返回乙個遍歷器物件,可以用for...of迴圈進行遍歷,唯一的區別是keys()是對鍵名的遍歷、values()是對鍵值的遍歷,entries()是對鍵值對的遍歷

var arr = [1,3,5,7]

var k = arr.keys()

var v = arr.values()

var e = arr.entries()

for(let item of k)

for(let item of v)

for(let item of e)

遍歷物件:

方法1;for ... in

const obj = 

for(let key in obj)

方法二: 1)、object.keys(obj)  2)、object.values(obj)

const obj = 

console.log(object.keys(obj)) // ['id','name','age']

console.log(object.values(obj)) // ['1','zhangsan','18']

第三種:使用object.getownpropertynames(obj)

const obj = 

object.getownpropertynames(obj).foreach(function(key))

js遍歷陣列(物件)

例 let arr 1,2,3 for let i 0 iconsole.log arr i 輸出結果 1 2 3 例 let arr 1,2,3 for let i in arr 輸出結果 1 2 3 說明 同普通for迴圈,以key遍歷查詢陣列或物件 例 let arr 1,2,3 for le...

js遍歷陣列和物件的方法

第二條鏈結裡有分析不同遍歷方式的效率 var arr name age var obj for in遍歷陣列和和物件 for key in obj foreach遍歷陣列,三個引數依次是陣列元素 索引 陣列本身 arr.foreach function value,index,array 返回乙個陣...

js 常見的遍歷陣列 物件 方法

原生js const obj for let key in obj 獲得所有的key console.log object.keys obj 獲得所有的value console.log object.values obj jquery each arr,function index,value c...