es6

learn-es6常用语法(2)

2019-11-19  本文已影响0人  crayona

1.遍历对象

forEach()    (遍历数组中的中)

a只能对数组对象使用   传入一个function时有三个参数(index,value,数组对象)

b与map相似   array.forEach(callback,[thisObject])    第一个参数:必须的函数 第二个参数:你要注入函数中的数组

let  abc=[1,2,3];     let fun1=function(value){ console.log(value+':::')}

abc.forEach(fun1,abc)

-----------------------

map  (对数组执行方法的)(会生成一个新的数组)

let arrNew=arr.map((item)=>{    return item+'hello?'})

map与forEach的区别  :1forEach 循环数组中的值    map对循环的数组执行方法

2forEach没有返回值         map有返回值  (默认返回undefined)

3map不会改变原数组会生成一个新的数组

----------------------

filter(对数组过滤)(返回新的数组)(返回符合条件的数据)

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

arr.filter((item)=>{  return item%2=0})   返回符合条件的数据

----------------------

reduce  (叠加或者叠减数组中的每一项)(返回一个新的值)

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

arr.reduce((thisTime-value,next-value)=>{ return thisTime-value+next-value},initValue)

参数:本次的值  下次的值   初始值

let abc=[{num:1},{num:21},{num:8}]

abc.reduce((start,next)=>{

return start.num>next.num?{num:start.num}:{num:next.num};})

------------------

some(数组中是否包含某个值)(返回true|false)(有一个符合的就停止)

***只要循环中有一个符合条件的就停止  返回true

arr.some((item)=>{

return item=2

})

------------------------

every(数组中每一项都符合)(如果有一项不符合就结束循环,返回false)

arr.every((item)=>{

return item!=0

})

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

arr.every((item,key,arr)=>{

return item<3   //在item=3时结束循环 ,并且返回false

})

上一篇 下一篇

猜你喜欢

热点阅读