각 축소 작업에 대한 상호 작용 수를 계산합니다.
P粉191323236
P粉191323236 2023-08-14 17:21:30
0
1
386

다음과 같은 개체 목록이 있습니다.

const UsageCosts = { 224910186407: { 장치 ID: "224910186407", 통화: "GBP", 연간 사용량: 1480.81 }, 224910464538: { 장치 ID: "224910464538", 통화: "GBP", 연간 사용량: 617.36 }, 224910464577: { 장치 ID: "224910464577", 통화: "EUR", 연간 사용량: 522.3 } }

다음과 같이 통화별로 합계를 계산합니다.

const totalYearlyCost = Object.values(usageCosts).reduce( (acc: { [키: 문자열]: 임의 }, 통계: 임의) => if (stat.currency && !acc[stat.currency]) { acc[stat.currency] = 0 } 반품 { ...acc, [stat.currency!]: acc[stat.currency!] + stat.yearlyUsage, } }, {}, )

다음과 같이 개체를 반환합니다.

{ 유로: 522.3 GBP: 2,098.17 }

또한 다음과 같이 통화당 총 기기 수를 반환하고 싶습니다.

{ EUR: 522.3(1개 장치) GBP: 2,098.17(2개 장치) }

다른 루프를 추가해 보았으나 결과가 예상과 달랐습니다.

P粉191323236
P粉191323236

모든 응답 (1)
P粉481815897

이 작업을 두 부분으로 나누면 더 쉬울 것입니다.

먼저reduce그룹화된 값을 포함하는 배열로 변환합니다.

그런 다음 객체를 반복하고(reduce를 사용할 수도 있음)배열의 합계를 구하고 문자열에${array.length} devices를 추가합니다.

으아악
    최신 다운로드
    더>
    웹 효과
    웹사이트 소스 코드
    웹사이트 자료
    프론트엔드 템플릿
    회사 소개 부인 성명 Sitemap
    PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!