찾다

 >  Q&A  >  본문

각 축소 작업에 대한 상호 작용 수를 계산합니다.

<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粉191323236P粉191323236456일 전479

모든 응답(1)나는 대답할 것이다

  • P粉481815897

    P粉4818158972023-08-15 15:34:26

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

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

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

    으아악

    회신하다
    0
  • 취소회신하다