Ez az oktatóanyag leírja azt az eljárást, amellyel a redukció() metódus meghívható objektumok tömbjén, hogy megtalálja tulajdonságaik összegét.
Hogyan lehet csökkenteni az objektumok tömbjét a tulajdonságaik összegzéséhez?
Egy objektumtömb tulajdonságainak összegzéséhez adja át a visszahívási függvényt a ' csökkenti() ” módszerrel. Ez a visszahívási módszer két argumentumot fogad el, egy ' akkumulátor ' és a ' jelenlegi érték ”. Az „aktuális érték” az éppen feldolgozás alatt álló elemet jelöli, az „akkumulátor” pedig az összeg összesített összegét adja meg. Az objektumok megadott tulajdonságának összegének kiszámításához használja a pont (.) vagy a zárójeles ([ ]) jelölést a visszahívási függvényen belül.
Szintaxis
A megadott szintaxis a „reduce()” metódushoz használatos:
sor. csökkenteni ( visszahívásFunc , kezdő érték )
1. példa
Hozzon létre egy objektumtömböt ' leltár ”, amely négy objektumot tartalmaz, amelyek a termékek nevét és mennyiségét tartalmazzák:
volt leltár = [
{ termék név : 'Kenyér' , Mennyiség : 30 } ,
{ termék név : 'Vaj' , Mennyiség : Négy öt } ,
{ termék név : 'Gyümölcslé' , Mennyiség : 58 } ,
{ termék név : 'Zab' , Mennyiség : 40 }
] ;
Hívja meg a Reduction() metódust a visszahívási függvénnyel, hogy megkapja az objektum '' nevű tulajdonságának összegét Mennyiség ”:
volt totalProductsQuantity = leltár. csökkenteni ( funkció ( előzőVal , jelenlegiVal ) {
Visszatérés előzőVal + jelenlegiVal. Mennyiség ;
} , 0 ) ;
Végül nyomtassa ki a konzolra a mennyiség összegének csökkentett értékét:
konzol. log ( 'Termékek teljes mennyisége:' , totalProductsQuantity ) ;Megfigyelhető, hogy az objektumok tulajdonságainak összegét sikerült kiszámítani:
2. példa
Megadhat egy függvényt is a megadott objektum tulajdonságának összegének kiszámításához. Először definiálunk egy „tanuló” nevű objektumot a következő attribútumokkal/tulajdonságokkal. tantárgy ' és a ' jelek ”:
{ tantárgy : 'Matek' , jelek : 89 } ,
{ tantárgy : 'Földrajz' , jelek : 72 } ,
{ tantárgy : 'Tudomány' , jelek : 65 } ,
{ tantárgy : 'Angol' , jelek : 75 }
] ;
Határozzon meg egy '' nevű függvényt számítás() ”, és egy objektum tulajdonságának eléréséhez használja a zárójeles ([ ]) jelölést:
funkció számítás ( obj , ingatlan ) {volt kiszámítja = obj. csökkenteni ( funkció ( előzőVal , jelenlegiVal ) {
Visszatérés előzőVal + jelenlegiVal [ ingatlan ] ;
} , 0 ) ;
konzol. log ( 'Teljes:' , kiszámítja ) ;
}
Most hívja meg a függvényt egy objektum átadásával ' diák 'és egy ingatlan' jelek ” az összes tantárgyból szerzett pontszámok összegének meghatározásához:
számítás ( diák , 'jelek' ) ; Kimenet
Ez minden arról szól, hogyan hívjuk meg a redukció() metódust objektumok tömbjén a tulajdonságaik összegének kiszámításához.
Következtetés
Adja át a visszahívási funkciót a „ csökkenti() ” módszer egy objektumtömb tulajdonságainak összegének kiszámítására. Az objektum tulajdonságainak eléréséhez használja a '' pontot. jelölés vagy zárójeles „[ ]” jelölés a visszahívási funkción belül. Ez az oktatóanyag azt az eljárást írja le, hogyan hívható meg a redukció() metódus objektumok tömbjén, hogy megtalálja tulajdonságaik összegét.