Cum să apelezi la reducere pe o serie de obiecte pentru a le însuma proprietățile?

Cum Sa Apelezi La Reducere Pe O Serie De Obiecte Pentru A Le Insuma Proprietatile



În timp ce lucrați cu matrice de obiecte în JavaScript, este adesea necesar să efectuați calcule asupra proprietăților acestora. De exemplu, găsirea sumei unei anumite proprietăți pentru toate obiectele dintr-o matrice este o sarcină comună. „ reduce() ” este un instrument util pentru finalizarea unor astfel de calcule, deoarece vă permite să colectați o valoare în mod iterativ pe baza membrilor unui tablou.

Acest tutorial va descrie procedura de apelare a metodei reduce() pe o matrice de obiecte pentru a găsi suma proprietăților lor.

Cum să apelezi la reducere pe o serie de obiecte pentru a le însuma proprietățile?

Pentru a suma proprietățile unei matrice de obiecte, treceți funcția de apel invers la „ reduce() ” metoda. Această metodă de apel invers acceptă două argumente, un „ acumulator ' si ' Valoarea curentă ”. „Valoarea curentă” reprezintă elementul în curs de procesare, iar „acumulator” specifică totalul cumulat al sumei. Pentru a calcula suma proprietăților specificate ale obiectelor, utilizați notația punct (.) sau notația paranteze ([ ]) în cadrul funcției de apel invers.







Sintaxă
Sintaxa dată este utilizată pentru metoda „reduce()”:



matrice. reduce ( callbackFunc , valoarea initiala )

Exemplul 1
Creați o matrice de obiecte numită „ inventar ”, care are patru obiecte care conțin denumirea produselor și cantitățile respective:



a fost inventar = [
{ numele produsului : 'Pâine' , cantitate : 30 } ,
{ numele produsului : 'Unt' , cantitate : Patru cinci } ,
{ numele produsului : 'Suc' , cantitate : 58 } ,
{ numele produsului : 'Ovăz' , cantitate : 40 }
] ;

Apelați metoda reduce() cu funcția de apel invers pentru a obține suma proprietății obiectului numită „ cantitate ”:





a fost totalProductsQuantity = inventar. reduce ( funcţie ( precedentVal , currentVal ) {
întoarcere precedentVal + currentVal. cantitate ;
} , 0 ) ;

În cele din urmă, tipăriți valoarea redusă a sumei cantității pe consolă:

consolă. Buturuga ( „Cantitatea totală de produse:” , totalProductsQuantity ) ;

Se poate observa că suma proprietăților obiectelor a fost calculată cu succes:



Exemplul 2
De asemenea, puteți defini o funcție pentru calcularea sumei proprietăților obiectului specificat. Mai întâi, vom defini un obiect numit „student” cu atribute/proprietăți numite „ subiect ' si ' semne ”:

a fost student = [
{ subiect : „Matematică” , semne : 89 } ,
{ subiect : 'Geografie' , semne : 72 } ,
{ subiect : 'Ştiinţă' , semne : 65 } ,
{ subiect : 'Engleză' , semne : 75 }
] ;

Definiți o funcție numită „ calcul() ”, și pentru a accesa proprietatea unui obiect, utilizați notația paranteze ([ ]):

funcţie calcul ( obj , proprietate ) {
a fost calculati = obj. reduce ( funcţie ( precedentVal , currentVal ) {
întoarcere precedentVal + currentVal [ proprietate ] ;
} , 0 ) ;
consolă. Buturuga ( 'Total:' , calculati ) ;
}

Acum, apelați funcția pasând un obiect „ student ” și o proprietate ” semne ” pentru a determina suma notelor totale obținute la toate disciplinele:

calcul ( student , „semne” ) ;

Ieșire

Acesta este totul despre cum să apelați metoda reduce() pe o matrice de obiecte pentru a calcula suma proprietăților lor.

Concluzie

Treceți funcția de apel invers la „ reduce() ” metoda de calcul a sumei proprietăților unui tablou de obiecte. Pentru a accesa proprietățile obiectului, utilizați punctul „.” notație sau notație „[ ]” între paranteze în cadrul funcției de apel invers. Acest tutorial a descris procedura de apelare a metodei reduce() pe o matrice de obiecte pentru a găsi suma proprietăților acestora.