[javascript]객체의 키 중에서 숫자 타입의 값을 필터링하고 합산

0
639
javascript
javascript

다음은 주어진 객체의 키 중에서 숫자 타입의 값을 필터링하고 합산하는 예제입니다.

const sumNumberValues = (obj) => {
    return Object.values(obj)
        .filter(value => typeof value === 'number' && value >= 0)
        .reduce((sum, value) => sum + value, 0);
};

// 예제 객체
const exampleObj = {
    a: 10,
    b: '20',
    c: 30,
    d: -5,
    e: 50,
    f: 'hello',
    g: 0
};

// 함수 호출 및 결과 출력
const totalScore = sumNumberValues(exampleObj);
console.log(totalScore); // 출력: 90

관련 링크

  • Object.values() – MDN: Object.values() 메서드는 주어진 객체 자신의 열거 가능한 속성 값들을 배열로 반환합니다.
  • Array.prototype.filter() – MDN: filter() 메서드는 주어진 함수의 테스트를 통과하는 모든 요소를 모아 새로운 배열로 반환합니다.
  • Array.prototype.reduce() – MDN: reduce() 메서드는 배열의 각 요소에 대해 제공된 리듀서(reducer) 함수를 실행하여 단일 출력 값을 만듭니다.