Hvordan kalder man reducering på en række objekter for at summere deres egenskaber?

Hvordan Kalder Man Reducering Pa En Raekke Objekter For At Summere Deres Egenskaber



Mens du arbejder med arrays af objekter i JavaScript, er det ofte nødvendigt at udføre beregninger på deres egenskaber. For eksempel er det en almindelig opgave at finde summen af ​​en specifik egenskab på tværs af alle objekter i et array. Det ' reducere() ”-metoden er et nyttigt værktøj til at fuldføre sådanne beregninger, fordi den giver dig mulighed for at indsamle en værdi iterativt baseret på medlemmerne af et array.

Denne vejledning vil beskrive proceduren til at kalde metoden reduce() på en række objekter for at finde summen af ​​deres egenskaber.

Hvordan kalder man reducering på en række objekter for at summere deres egenskaber?

For at opsummere egenskaberne for en række objekter skal du videregive tilbagekaldsfunktionen til ' reducere() ” metode. Denne tilbagekaldsmetode accepterer to argumenter, en ' akkumulator ' og ' nuværende værdi ”. Den 'aktuelle værdi' repræsenterer det aktuelt behandlede element, og 'akkumulatoren' angiver den samlede sum af summen. For at beregne summen af ​​objekternes specificerede egenskab skal du bruge prik (.)-notationen eller parentes-notationen ([ ]) i tilbagekaldsfunktionen.







Syntaks
Den givne syntaks bruges til 'reduce()'-metoden:



array. reducere ( tilbagekaldFunc , startværdi )

Eksempel 1
Opret en række objekter med navnet ' beholdning ”, der har fire objekter, der indeholder navnene på produkterne og deres respektive mængder:



var beholdning = [
{ produktnavn : 'Brød' , antal : 30 } ,
{ produktnavn : 'Smør' , antal : Fire, fem } ,
{ produktnavn : 'Juice' , antal : 58 } ,
{ produktnavn : 'Havre' , antal : 40 }
] ;

Kald reduce()-metoden med tilbagekaldsfunktionen for at få summen af ​​objektets egenskab kaldet ' antal ”:





var totalProduktmængde = beholdning. reducere ( fungere ( forrigeVal , nuværendeVal ) {
Vend tilbage forrigeVal + nuværendeVal. antal ;
} , 0 ) ;

Udskriv til sidst den reducerede værdi af summen af ​​mængden på konsollen:

konsol. log ( 'Samlet antal produkter:' , totalProduktmængde ) ;

Det kan observeres, at summen af ​​objekternes egenskaber er blevet beregnet med succes:



Eksempel 2
Du kan også definere en funktion til at beregne summen af ​​det angivne objekts egenskab. Først vil vi definere et objekt ved navn 'elev' med attributter/egenskaber kaldet ' emne ' og ' mærker ”:

var studerende = [
{ emne : 'Matematik' , mærker : 89 } ,
{ emne : 'Geografi' , mærker : 72 } ,
{ emne : 'Videnskab' , mærker : 65 } ,
{ emne : 'Engelsk' , mærker : 75 }
] ;

Definer en funktion med navnet ' beregning() ”, og for at få adgang til egenskaben af ​​et objekt, brug parentes ([ ]) notation:

fungere beregning ( obj , ejendom ) {
var Beregn = obj. reducere ( fungere ( forrigeVal , nuværendeVal ) {
Vend tilbage forrigeVal + nuværendeVal [ ejendom ] ;
} , 0 ) ;
konsol. log ( 'I alt:' , Beregn ) ;
}

Kald nu funktionen ved at sende et objekt ' studerende ' og en ejendom ' mærker ” for at bestemme summen af ​​de samlede karakterer opnået i alle fag:

beregning ( studerende , 'mærker' ) ;

Produktion

Det handler om, hvordan man kalder reduce()-metoden på en række objekter til at beregne summen af ​​deres egenskaber.

Konklusion

Send tilbagekaldsfunktionen til ' reducere() ” metode til at beregne summen af ​​egenskaberne for et array af objekter. For at få adgang til objektets egenskaber skal du bruge prikken '.' notation eller parentes '[ ]' notation i tilbagekaldsfunktionen. Denne vejledning beskrev proceduren for at kalde metoden reduce() på en række objekter for at finde summen af ​​deres egenskaber.