Hvordan endre verdi av objektet som er inne i en matrise ved hjelp av JavaScript?

Hvordan endre verdi av objektet som er inne i en matrise ved hjelp av JavaScript?
Mens de jobber med JavaScript, kan det hende at utviklere må oppdatere dataene dynamisk. Det er inne i matrisen, objektet eller en rekke objekter. En matrise er en gruppe eller samling av verdier, og hver verdi kan være av hvilken som helst datatype, inkludert objekter. For å endre verdien av et objekt inne i en matrise, får du først få tilgang til objektet og deretter endre egenskapene. I JavaScript eksisterer det flere forhåndsbygde metoder for å endre verdien av et objekt inne i en matrise.

Denne opplæringen vil demonstrere tilnærmingene for å endre verdien av et objekt inne i en matrise i JavaScript.

Hvordan endre/oppdatere verdien til et objekt som er inne i en matrise ved hjelp av JavaScript?

For å endre verdien av et objekt som er inne i en matrise, bruk følgende JavaScript forhåndsdefinerte metoder:

  • FindIndex () -metode
  • Kart () Metode med spredningsoperatør
  • finn () metode
  • for-of loop

Metode 1: Endringsverdi av objektet som er inne i en matrise ved å bruke "findIndex ()" -metode

For å endre verdien av et objekt inne i matrisen, bruk "findIndex ()”Metode. Denne metoden finner elementets indeks i en matrise som oppfyller den bestemte tilstanden. For å spesifisere tilstanden bruker den en tilbakeringingsfunksjon.

Syntaks
Følg den gitte syntaks for å endre verdien av et objekt ved å bruke FindIndex () -metoden:

ArrayObject.findIndex (obj =>
//betingelse
);

Eksempel
Lag en matrise som inneholder forskjellige objekter:

var arrobj = [id: 5, navn: "Mayer", alder: 25,
Id: 9, navn: "Paul", alder: 26,
Id: 12, navn: "Steven", alder: 20]

Ring FindIndex () -metoden med tilbakeringingsfunksjonen som sjekker IDen til objekter som tilsvarer “12”, Og lagre indeksen for objektet i en variabel”GetIndex”:

const getIndex = arrobj.findIndex (obj =>
Returner obj.id === 12;
);

Endre verdien av eiendommen “alder”Av objekt:

Arrobj [getIndex].alder = 24;

Til slutt, skriv ut den oppdaterte rekke objekter på konsollen:

konsoll.Logg ("Det oppdaterte utvalget av objektet er:");
konsoll.logg (arrobj);

Utgangen indikerer at verdien av “alder”Av objektet hvis ID er 12 har blitt endret fra“20" til "24”:

Metode 2: Endringsverdi av objektet som er inne i en matrise ved å bruke "kart ()" -metode med spredningsoperatør

Bruk “kart()”Metode med“spredt operatør”For å endre verdien av objektet inne i en matrise. “Kart ()” brukes til å lage en ny matrise ved å ringe en funksjon på hvert element i en eksisterende matrise. Mens spredningsoperatøren tillater å spre eller kopiere matriseelementer til en ny matrise eller argumentene til en funksjonsanrop. Metoden “Map ()” endrer ikke/endrer den opprinnelige matrisen, men den sender ut en ny matrise med de modifiserte elementene.

Syntaks
For å endre verdien av et objekt ved å bruke MAP () -metoden med spredningsoperatøren, bruk følgende syntaks:

ArrayObject.kart (obj =>
if (tilstand)
return … obj, nøkkel: newValue;

returner obj;
);

Eksempel
Ring MAP () -metoden med spredt operatør for å endre navnet på objektet hvis ID er “9”:

const newObjectarr = arrobj.kart (obj =>
hvis (obj.id === 9)
return … obj, navn: 'alice';

returner obj;
);

Skriv ut den modifiserte matrisen av objektet på konsollen:

konsoll.logg (newObjectarr);

Eiendommen "Navn”Av objektet hvis ID er“9”Har blitt endret fra“Paul" til "Alice”:

Metode 3: Endringsverdi av objektet som er inne i en matrise ved å bruke "finn ()" -metode

For å endre verdien av et objekt inne i en matrise, bruk "finne()”Metode. Det brukes til å finne elementet i en matrise som oppfyller en gitt tilstand. Det gir verdien av elementet hvis det tilfredsstiller tilstanden. Ellers gir det “udefinert, ”Å indikere at intet slikt element er funnet.

Syntaks
Bruk den gitte syntaks for Find () -metoden for å finne elementet i en matrise:

ArrayObject.finn (obj =>
//betingelse
);

Eksempel
Påkalle Find () -metoden for å finne objektet hvis ID er “5”Og lagre objektet i en variabel”findIndex”:

const findIndex = arrobj.finn (obj =>
Returner obj.id === 5;
);

Sjekk om variabelen "findindex" ikke er lik "udefinert”Betyr, hvis objektet blir funnet, endre verdien på eiendommen”Navn”Av objektet:

if (findIndex !== udefinert)
findIndex.Navn = 'John';

Til slutt, skriv ut objektet på konsollen:

konsoll.logg (findIndex);

Utgangen viser bare det spesifiserte objektet ved å endre verdien:

Metode 4: Endringsverdi av objektet som er inne i en matrise ved hjelp av "for-of" -løyfe

Du kan også bruke “for-of”Loop for å endre verdien av et objekt inne i matrisen. Det brukes til å iterere over rekke objekter og sjekke tilstanden for å endre objektets verdi. Etter tilgang til og endret objektets verdi, avslutter du sløyfen ved å bruke "gå i stykker”Nøkkelord.

Syntaks
Følg den gitte syntaksen for "for-of" -løkken:

for (const obj av arrayObject)
if (tilstand)
//uttalelse
gå i stykker;

Eksempel
Bruk for-av-loopen og sjekk objektet hvis ID er "5”Og endre“alder" til "27”:

for (const obj av arrobj)
hvis (obj.id === 5)
obj.alder = 27;
gå i stykker;

Skriv ut det oppdaterte objektet inne i matrisen på konsollen:

konsoll.logg (arrobj);

Produksjon

Vi har samlet all den viktige informasjonen som er relevant for den endrede verdien av et objekt som er inne i matrisen i JavaScript.

Konklusjon

For å endre verdien av et objekt som er inne i en matrise, bruk JavaScript forhåndsdefinerte metoder, inkludert “findIndex (), “kart()”Metode med“spredt operatør”,“finne()”Metode, eller“for-of" Løkke. Disse metodene endret en objekts verdier i en matrise med suksess. Denne opplæringen demonstrerte de forskjellige tilnærmingene for å endre verdien av et objekt som er inne i en matrise i JavaScript.