Array - filter, map, reduce, flat

filter, some, any

  • boolean을 리턴하는 함수를 인자로 사용
  • arr.filter(predicate) -> Array
  • arr.some(predicate) -> boolean
  • arr.any(predicate) -> boolean
let array = [1,2,3,4,5]

const isOdd = (el) => el%2===1


// filtered = [1,3,5]  , 홀수인 숫자만 남기기
let filtered = array.filter(isOdd) 

// 홀수 하나라도 존재하는지 검사
let hasOdd = array.some(isOdd)

// 모든 수가 홀수인지(=짝수가 하나도 없음) 검사
let noEven = array.every(isOdd) 

map, reduce,flat


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

// map
let mappedArr = array.map((el,idx,array)=>{
 return el*idx 
});  // mappedArr = [ 0, 2, 6, 12, 20 ]


// reduce
let tot = array.reduce((acc,cur,idx, array)=>acc+cur,0) // tot= 15


// flat
array = [1,2,3,[4,5],6]
let flattedArr = array.flat() // flattedArr = [ 1, 2, 3, 4, 5, 6 ]
array = arr = [1,2,3,[4,[5,6]]]
array.flat() // [ 1, 2, 3, 4, [ 5, 6 ] ]
array.flat(2) // [ 1, 2, 3, 4, 5, 6 ]

// flatMap
array = ["Hello World", "Good Bye"]
array.flatMap(x=>x.split(' ')) // [ 'Hello', 'World', 'Good', 'Bye' ]

좋은 웹페이지 즐겨찾기