Tento tutoriál demonstruje přístupy ke změně hodnoty objektu uvnitř pole v JavaScriptu.
Jak změnit/aktualizovat hodnotu objektu, který je uvnitř pole pomocí JavaScriptu?
Ke změně hodnoty objektu, který je uvnitř pole, použijte následující předdefinované metody JavaScriptu:
Metoda 1: Změňte hodnotu objektu, který je uvnitř pole pomocí metody „findIndex()“.
Chcete-li změnit hodnotu objektu uvnitř pole, použijte „ findIndex() “ metoda. Tato metoda najde index prvku v poli, které splňuje určitou podmínku. Pro specifikaci podmínky používá funkci zpětného volání.
Syntax
Při změně hodnoty objektu pomocí metody findIndex() postupujte podle uvedené syntaxe:
arrayObject. findIndex ( obj => {
//stav
} ) ;
Příklad
Vytvořte pole, které obsahuje různé objekty:
byl arrObj = [ { id : 5 , název : 'Mayer' , stáří : 25 } ,
{ id : 9 , název : 'Pavel' , stáří : 26 } ,
{ id : 12 , název : 'Steven' , stáří : dvacet } ]
Zavolejte metodu findIndex() s funkcí zpětného volání, která kontroluje id objektů ekvivalentní „ 12 “ a uložte index objektu do proměnné „ getIndex “:
konst getIndex = arrObj. findIndex ( obj => {vrátit se obj. id === 12 ;
} ) ;
Změňte hodnotu nemovitosti “ stáří “ objektu:
arrObj [ getIndex ] . stáří = 24 ;
Nakonec vytiskněte aktualizované pole objektů na konzole:
řídicí panel. log ( 'Aktualizované pole objektů je:' ) ;řídicí panel. log ( arrObj ) ;
Výstup indikuje, že hodnota „ stáří “ objektu, jehož id je 12, byl úspěšně změněn z “ dvacet “ až “ 24 “:
Metoda 2: Změna hodnoty objektu, který je uvnitř pole pomocí metody „map()“ s operátorem Spread
Využijte „ mapa() “ metoda s “ operátor šíření ” pro změnu hodnoty objektu uvnitř pole. „map()“ se používá k vytvoření nového pole voláním funkce na každý prvek existujícího pole. Zatímco operátor spread umožňuje rozložit nebo zkopírovat prvky pole do nového pole nebo argumenty volání funkce. Metoda „map()“ nemění/nemění původní pole, ale vygeneruje nové pole s upravenými prvky.
Syntax
Pro změnu hodnoty objektu pomocí metody map() s operátorem spread použijte následující syntaxi:
-li ( stav ) {
vrátit se { ... obj , klíč : newValue } ;
}
vrátit se obj ;
} ) ;
Příklad
Zavolejte metodu map() s operátorem spread a změňte název objektu, jehož id je „ 9 “:
-li ( obj. id === 9 ) {
vrátit se { ... obj , název : 'Alice' } ;
}
vrátit se obj ;
} ) ;
Vytiskněte upravené pole objektu na konzole:
řídicí panel. log ( newObjectArr ) ;Vlastnictví ' název ” objektu, jehož id je “ 9 “ bylo změněno z “ Pavel “ až “ Alice “:
Metoda 3: Změna hodnoty objektu, který je uvnitř pole pomocí metody „find()“.
Pro změnu hodnoty objektu uvnitř pole použijte „ nalézt() “ metoda. Používá se k nalezení prvku v poli, který splňuje danou podmínku. Vypíše hodnotu prvku, pokud splňuje podmínku. V opačném případě dává „ nedefinováno “, což znamená, že žádný takový prvek nebyl nalezen.
Syntax
Použijte danou syntaxi pro metodu find() k nalezení prvku v poli:
//stav
} ) ;
Příklad
Vyvolejte metodu find() k nalezení objektu, jehož id je „ 5 “ a uložte objekt do proměnné “ findIndex “:
vrátit se obj. id === 5 ;
} ) ;
Zkontrolujte, zda se proměnná „findIndex“ nerovná „ nedefinováno “ znamená, že pokud je objekt nalezen, změňte hodnotu vlastnosti “ název “ objektu:
-li ( findIndex !== nedefinováno ) {findIndex. název = 'John' ;
}
Nakonec vytiskněte objekt na konzole:
řídicí panel. log ( findIndex ) ;Výstup zobrazí pouze zadaný objekt změnou jeho hodnoty:
Metoda 4: Změňte hodnotu objektu, který je uvnitř pole pomocí smyčky „for-of“.
Můžete také použít „ pro-z ” smyčka pro změnu hodnoty objektu uvnitř pole. Používá se k iteraci pole objektů a kontrole podmínky pro změnu hodnoty objektu. Po přístupu a změně hodnoty objektu ukončete smyčku pomocí „ přestávka “.
Syntax
Postupujte podle dané syntaxe pro smyčku „for-of“:
-li ( stav ) {
//prohlášení
přestávka ;
}
}
Příklad
Použijte cyklus for-of a zkontrolujte objekt, jehož id je „ 5 “ a změňte „ stáří “ až “ 27 “:
-li ( obj. id === 5 ) {
obj. stáří = 27 ;
přestávka ;
}
}
Vytiskněte aktualizovaný objekt uvnitř pole na konzole:
řídicí panel. log ( arrObj ) ;Výstup
Shromáždili jsme všechny podstatné informace relevantní pro měnící se hodnotu objektu, který je uvnitř pole v JavaScriptu.
Závěr
Chcete-li změnit hodnotu objektu, který je uvnitř pole, použijte předdefinované metody JavaScriptu, včetně „ findIndex() ,“ mapa() “ metoda s “ operátor šíření “, “ nalézt() metoda “, nebo “ pro-z “smyčka. Tyto metody úspěšně změnily hodnoty objektu uvnitř pole. Tento tutoriál demonstroval různé přístupy ke změně hodnoty objektu, který je uvnitř pole v JavaScriptu.