JavaScript:常用的一些数组遍历的方法
常用的一些遍历数组的方法:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title> </head> <body> <script type="text/javascript"> var students=[ { name:'小红', age:20, sex:'女' }, { name:'小华', age:18, sex:'男' }, { name:'小多', age:22, sex:'男' } ]; //数组遍历之forEach:就是单纯遍历数组 var he1=students.forEach(function(item,index,arr){ item.sex='男' return item; }); console.log(he1); //无返回值 console.log(students) //会改变原数组,此处在控制台会打印性别全是女,因为后面的代码改了,指针问题(打断点看) //数组遍历之for in:这个是遍历对象的方法 for(var k in students){ console.log('k代表',k); //数组里k代表下标,对象里k代表键 console.log(students[k].age); } //数组遍历之map:特点就是有返回值,可以返回新的数组 var he2=students.map(function(item,index,arr){ item.sex='女' return item; }); console.log(he2); //有返回值 console.log(students) //会改变原数组 //筛选数组之filter:特点就是返回筛选后的数组 var he3=students.filter(function(item,index,arr){ return item.sex=='男'; //将符合条件json对象,作为一个数组返回 }); console.log(he3); //检查数组之some:如果有一个元素满足条件,则表达式返回true , 剩余的元素不会再执行检测 var hx4=students.some(item=>{ return item.age>18 }) console.log(hx4) //检查数组之every:所有元素都满足则返回true var hx5=students.every(item=>{ return item.age>18 }) console.log(hx5) //检查数组之find:返回符合条件的第一个元素,没有则返回undefined var hx6=students.find(item=>{ return item.age>18 }) console.log(hx6) </script> </body> </html>