Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- 객체
- Andrew Ng
- 끈기
- 회고
- 자바스크립트
- 1일1문장
- 데이터전송
- React
- reactnative
- ES6
- 우선순위
- 스파르타코딩클럽
- Linux
- 클로저
- CSS
- Sequence
- multer
- Machine Learning
- coursera
- NextJS
- 자료구조
- Til
- scope
- 러닝자바스크립트
- 개발공부
- 리눅스
- docker
- HTTP
- nodejs
- javascript
Archives
- Today
- Total
해나아부지 개발일지
map vs filter vs reduce 본문
배열 method이다.
3가지 method는 인자로 함수를 넣는 것이 포인트!
- reduce(함수), map(함수), filter(함수)
1)익명함수
//배열의 모든 요소들이 자기 자신의 곱한 값을 갖는 새로운 배열을 얻는 함수
let array = [1,2,3,4]
function squaredArray(array) {
return array.map(function (num) { //익명 함수
return num * num
}
}
2)외부함수 참조
//배열의 모든 요소들이 자기 자신의 곱한 값을 갖는 새로운 배열을 얻는 함수
let array = [1,2,3,4]
function squared(num) { //외부에 함수를 정의
return num*num
}
function squaredArray(array) {
return array.map(squared) // map은 함수를 인자로 갖는다, 외부함수를 참조
}
Array.prototype.map()
1. 새 배열을 리턴한다.(immutable)
2. 똑같은 길이의 배열을 리턴한다.
3. 각 엘리먼트에 대해서 어떤 함수를 거쳐서, 그 결과 새로운 배열을 만든다. (1:1로 mapping, 요소의 값이 변함)
Array.prototype.filter()
1. 새 배열을 리턴한다. (immutable)
2. 특정한 조건의 맞는 값만 추출한다. (배열의 길이가 달라진다, 요소의 값은 변함이 없다)
Array.prototype.reduce()
1. 누적 계산된 결과값을(1개) 리턴한다.
- reduce 초기값을 설정해 주지 않으면
1) 배열의 첫번째 인덱스 값이 초기값이 된다
2) 콜백을 배열의 길이보다 -1만 한다
'Developers > JavaScript' 카테고리의 다른 글
Scope in Javascript (0) | 2020.05.16 |
---|---|
Math.Random()을 이용한 임의의 정수, 문자열 리턴하기 (0) | 2020.05.05 |
Mutable vs Immutable (0) | 2020.04.28 |
알쓸신잡(1) (0) | 2020.04.28 |
1-4. 배열(Array) (0) | 2020.04.25 |
Comments