5.1 for in,for of
<script>var test = [{name:"zhang",age:"18",height:"180cm"},{name:"li",age:"19",height:"170cm"},{name:"wang",age:"14",height:"200cm"}]// 给的是数组的每一项for (var i of test){console.log(i.age);}// 给的是数组的下标console.log(test);for (var i in test){console.log(i);}console.log(test);</script>
5.2 forEach
遍历数组中的值,并计算总和
var numbers = [1,2,3,4,5];var sum = 0;numbers.forEach(number=>sum+=number)console.log(sum)//15
5.3 map
关于map:当遍历的数组每一项是简单的类型,就不会改变原数组,而当遍历的数组的每一项是复杂的数据类型,那么就会改变原数组。(如果你原数组是复杂数据类型,你重新赋值会改变指针指向的地址,从而改变了原数组,)
<script>var arr =[2,3,4,5];var res0 = arr.map(item =>{return item*2;})console.log(res0);console.log(arr);var arr2 = [{name:"zhang",age:"18",height:"180cm"},{name:"li",age:"19",height:"170cm"},{name:"wang",age:"14",height:"200cm"}]// map 可以改变数组每一个项,得到一个新的数组var res = arr2.map(item =>{return item["age"]=parseInt(item["age"])*2+"px";})console.log(arr2); //{name:"zhang",age:"36px",height:"180cm"},{name:"li",age:"38px",height:"170cm"},{name:"wang",age:"28px",height:"200cm"}console.log(res);</script>
5.4 filter:
从数组中找出所有符合指定条件的元素
filter() 检测数值元素,并返回符合条件所有元素的数组。 filter() 不会改变原始数组。
5.5 find()
find:返回通过测试(函数内判断)的数组的第一个元素的值
它的参数是一个回调函数,所有数组成员依次执行该回调函数,直到找出第一个返回值为true的成员,然后返回该成员。如果没有符合条件的成员,则返回undefined。
5.6 every&some
every:数组中是否每个元素都满足指定的条件
some:数组中是否有元素满足指定的条件
一言以蔽之:Some: 一真即真;Every: 一假即假
5.7 reduce:将数组合成一个值
reduce() 方法接收一个方法作为累加器,数组中的每个值(从左至右) 开始合并,最终为一个值。
