JS

method chaining

chaereemee 2024. 3. 11. 00:12

설명

하나의 배열에 연속적으로 여러 배열 메소드를 적용하는 것을 말한다.

각 메서드는 이전 메서드의 결과를 기반으로 동작하며, 중간 변수를 사용하지 않고도 

한 줄로 배열에 대한 연산을 수행할 수 있다.

 

let numbers = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9];
let out = '';
numbers.filter((value) => value % 2 == 0)
       .map((value) => value * value)
       .forEach((value) => {
       		output += value + ' ';
       });
console.log(output);
// 0 4 16 36 64

 

filter()

주어진 함수의 조건을 만족하는 요소들만으로 이루어진 새로운 배열을 반환

 

map()

배열의 각 요소에 대해 주어진 함수를 호출한 결과로 이루어진 새로운 배열을 반환

 

reduce()

배열의 각 요소에 대해 주어진 함수를 실행하고, 이전 실행의 결과를 사용하여 하나의 값으로 축적하는 메서드이다.

이 메서드는 배열을 순회하면서 각 요소를 하나씩 처리하며, 최종적으로 하나의 값으로 줄여준다.

const numbers = [1, 2, 3, 4, 5];

const result = numbers 
    .filter(num => num % 2 === 0)        // 짝수만 필터링: [2, 4]
    .map(num => num * num)               // 각 숫자를 제곱: [4, 16]
    .reduce((acc, num) => acc + num, 0); // 제곱한 숫자들의 합 구하기: 20

// result = 20