각 축소 작업에 대한 상호 작용 수를 계산합니다.
P粉191323236
P粉191323236 2023-08-14 17:21:30
0
1
498
<p>다음과 같은 개체 목록이 있습니다.</p> <pre class="brush:php;toolbar:false;">const UsageCosts = { 224910186407: { 장치 ID: "224910186407", 통화: "GBP", 연간 사용량: 1480.81 }, 224910464538: { 장치 ID: "224910464538", 통화: "GBP", 연간 사용량: 617.36 }, 224910464577: { 장치 ID: "224910464577", 통화: "EUR", 연간 사용량: 522.3 } }</pre> <p>다음과 같이 통화별로 합계를 계산합니다. </p> <pre class="brush:php;toolbar:false;">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, } }, {}, )</pre> <p>다음과 같이 개체를 반환합니다. </p> <pre class="brush:php;toolbar:false;">{ 유로: 522.3 GBP: 2,098.17 }</pre> <p>또한 다음과 같이 통화당 총 기기 수를 반환하고 싶습니다. </p> <pre class="brush:php;toolbar:false;">{ EUR: 522.3(1개 장치) GBP: 2,098.17(2개 장치) }</pre> <p>다른 루프를 추가해 보았으나 결과가 예상과 달랐습니다. </p>
P粉191323236
P粉191323236

모든 응답(1)
P粉481815897

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

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

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

으아악
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿