js 常见的遍历数组 对象 方法

遍历对象

//原生js
const obj = {
            id:1,
            name:'jack',
            age:12}

 for(let key  in obj){
    console.log(key + '---' + obj[key])
  }

  
 // 获得所有的key
 console.log(Object.keys(obj))


 //获得所有的value
 console.log(Object.values(obj))



//jquery
 $.each(arr, function(index,value){    
    console.log(index+ '---' +value);               
         })

遍历数组

const arr=["张三","李四","王五"];


for(j = 0,len=arr.length; j < len; j++) {
     console.log(j,":",arr[j]);
    }



for (var i in arr){
     console.log(i,":",arr[i]);
     }



//可以正确响应break、continue和return语句
for (var v of arr) {
     console.log(v);
     }



arr.forEach(function(val, index) {
      console.log(val, index);
           });


  // jquery 
  $.each(arr, function(index,value){
        console.log(index+ '---' +value);
        })

函数式遍历

map操作 
var arr = [12,23,24,42,1]; 
var res = arr.map(function (item,index,arr ) { 
    console.log(item  + "--" + index +  "---" +arr);
    return item*10; 
}) 
console.log(res);    [120, 230, 240, 420, 10]
				
				
				
filter操作
var arr = [12,23,24,42,1]; 
var res = arr.filter(function (item) {
  return item>20;
});
console.log(res);  [23, 24, 42]

ES写法
var arr = [12,23,24,42,1]; 
var res = arr.filter((item) => {
  return item>20;
});
console.log(res);  [23, 24, 42]






				
find   返回一个符合条件
var arr = [12,23,24,42,1]; 
var res = arr.find(function (item) {
  return item>20;
});
console.log(res);    23

ES写法
var arr = [12,23,24,42,1]; 
var res = arr.find((item) => {
  return item>20;
});
console.log(res);   23



reduce
reduce() 方法接收一个函数作为累加器(accumulator),数组中的每个值(从左到右)开始缩减,最终为一个值。
var total = [0,1,2,3,4].reduce((a, b)=>a + b); 
console.log(total);   10


every遍历


some遍历
原文地址:https://www.cnblogs.com/fangyuandoit/p/13713775.html