Tento tutoriál ukáže prístupy na zmenu hodnoty objektu v poli v JavaScripte.
Ako zmeniť/aktualizovať hodnotu objektu, ktorý je vo vnútri poľa pomocou JavaScriptu?
Na zmenu hodnoty objektu, ktorý sa nachádza vo vnútri poľa, použite nasledujúce preddefinované metódy JavaScript:
Metóda 1: Zmena hodnoty objektu, ktorý je vo vnútri poľa, pomocou metódy „findIndex()“.
Ak chcete zmeniť hodnotu objektu vo vnútri poľa, použite príkaz „ findIndex() “. Táto metóda nájde index prvku v poli, ktoré spĺňa určitú podmienku. Na určenie podmienky používa funkciu spätného volania.
Syntax
Pri zmene hodnoty objektu pomocou metódy findIndex() postupujte podľa uvedenej syntaxe:
arrayObject. findIndex ( obj => {
//podmienka
} ) ;
Príklad
Vytvorte pole, ktoré obsahuje rôzne objekty:
bol arrObj = [ { id : 5 , názov : 'Mayer' , Vek : 25 } ,
{ id : 9 , názov : 'Pavol' , Vek : 26 } ,
{ id : 12 , názov : 'Steven' , Vek : dvadsať } ]
Zavolajte metódu findIndex() s funkciou spätného volania, ktorá kontroluje id objektov ekvivalentných „ 12 “ a uložte index objektu do premennej „ getIndex “:
konšt getIndex = arrObj. findIndex ( obj => {vrátiť obj. id === 12 ;
} ) ;
Zmeniť hodnotu nehnuteľnosti “ Vek “ objektu:
arrObj [ getIndex ] . Vek = 24 ;
Nakoniec vytlačte aktualizované pole objektov na konzole:
konzoly. log ( 'Aktualizované pole objektov je:' ) ;konzoly. log ( arrObj ) ;
Výstup indikuje, že hodnota „ Vek “ objektu, ktorého id je 12 bol úspešne zmenený z “ dvadsať “ až “ 24 “:
Metóda 2: Zmena hodnoty objektu, ktorý je vo vnútri poľa, pomocou metódy „map()“ s operátorom Spread
Využite „ mapa() “ metóda s “ operátor šírenia ” na zmenu hodnoty objektu vo vnútri poľa. „map()“ sa používa na vytvorenie nového poľa volaním funkcie na každom prvku existujúceho poľa. Zatiaľ čo operátor spread umožňuje rozložiť alebo skopírovať prvky poľa do nového poľa alebo argumenty volania funkcie. Metóda „map()“ nemení/nezmení pôvodné pole, ale vygeneruje nové pole s upravenými prvkami.
Syntax
Na zmenu hodnoty objektu pomocou metódy map() s operátorom spread použite nasledujúcu syntax:
ak ( stave ) {
vrátiť { ... obj , kľúč : newValue } ;
}
vrátiť obj ;
} ) ;
Príklad
Zavolaním metódy map() s operátorom spread zmeníte názov objektu, ktorého id je „ 9 “:
ak ( obj. id === 9 ) {
vrátiť { ... obj , názov : 'Alice' } ;
}
vrátiť obj ;
} ) ;
Vytlačte upravené pole objektu na konzole:
konzoly. log ( newObjectArr ) ;Vlastníctvo ' názov “ objektu, ktorého id je “ 9 “ sa zmenilo z “ Paul “ až “ Alice “:
Metóda 3: Zmena hodnoty objektu, ktorý je vo vnútri poľa, pomocou metódy „find()“.
Na zmenu hodnoty objektu vo vnútri poľa použite „ Nájsť() “. Používa sa na nájdenie prvku v poli, ktorý spĺňa danú podmienku. Vypíše hodnotu prvku, ak spĺňa podmienku. V opačnom prípade dáva „ nedefinované “, čo znamená, že sa nenašiel žiadny takýto prvok.
Syntax
Použite danú syntax pre metódu find() na nájdenie prvku v poli:
//podmienka
} ) ;
Príklad
Vyvolajte metódu find() na nájdenie objektu, ktorého id je „ 5 “ a uložte objekt do premennej “ findIndex “:
vrátiť obj. id === 5 ;
} ) ;
Skontrolujte, či sa premenná „findIndex“ nerovná „ nedefinované “ znamená, že ak sa objekt nájde, zmeňte hodnotu vlastnosti “ názov “ objektu:
ak ( findIndex !== nedefinované ) {findIndex. názov = 'John' ;
}
Nakoniec vytlačte objekt na konzole:
konzoly. log ( findIndex ) ;Výstup zobrazí iba zadaný objekt zmenou jeho hodnoty:
Metóda 4: Zmena hodnoty objektu, ktorý je vo vnútri poľa, pomocou slučky „for-of“.
Môžete tiež použiť „ pre-z ” slučka na zmenu hodnoty objektu vo vnútri poľa. Používa sa na iteráciu poľa objektov a kontrolu podmienky na zmenu hodnoty objektu. Po prístupe a zmene hodnoty objektu ukončite cyklus pomocou „ prestávka kľúčové slovo.
Syntax
Postupujte podľa uvedenej syntaxe pre slučku „for-of“:
ak ( stave ) {
//vyhlásenie
prestávka ;
}
}
Príklad
Použite cyklus for-of a skontrolujte objekt, ktorého ID je „ 5 “ a zmeniť „ Vek “ až “ 27 “:
ak ( obj. id === 5 ) {
obj. Vek = 27 ;
prestávka ;
}
}
Vytlačte aktualizovaný objekt vo vnútri poľa na konzole:
konzoly. log ( arrObj ) ;Výkon
Zhromaždili sme všetky podstatné informácie týkajúce sa meniacej sa hodnoty objektu, ktorý je v poli v JavaScripte.
Záver
Ak chcete zmeniť hodnotu objektu, ktorý sa nachádza vo vnútri poľa, použite preddefinované metódy JavaScript, vrátane „ findIndex() ,“ mapa() “ metóda s “ operátor šírenia “, “ Nájsť() “ alebo “ pre-z “slučka. Tieto metódy úspešne zmenili hodnoty objektu v poli. Tento tutoriál demonštroval rôzne prístupy k zmene hodnoty objektu, ktorý je v poli v JavaScripte.