Du kan slette et matriseelement på flere forskjellige måter, så sørg for at du velger det som passer best for omstendighetene dine.
Matriser er en av de vanlige datastrukturene du vil samhandle med i JavaScript. Når du fjerner et element fra en matrise, er det forskjellige metoder til din disposisjon. Alt avhenger av hvor elementet du vil fjerne er, og hvordan du vil identifisere det.
Se hva de ulike måtene å fjerne et JavaScript-matriseelement på, enten det er i starten, slutten eller et sted i mellom.
1. Fjern det første elementet fra en matrise
For å fjerne det første elementet i en matrise, bruk JavaScripts innebygde skifte() metode. Det fungerer ut av esken ved å fjerne elementet og deretter flytte indeksene til alle de gjenværende elementene.
Etter at du har fjernet varen, returnerer shift-metoden den. Det betyr at du kan tilordne det fjernede elementet til en annen variabel og bruke det senere hvis du vil.
Dette er hvordan:
konst demoArray = [1, 2, 3, 4, 5];
konst firstElement = demoArray.shift();
konsoll.log (demoArray); // logger [2, 3, 4, 5]
konsoll.log (firstElement); // logger 1
2. Fjern det siste elementet fra en matrise
JavaScript har en innebygd pop() metode for å fjerne det siste elementet i en matrise. Som skifte() metode, pop() returnerer det fjernede elementet fra matrisen.
konst demoArray = [1, 2, 3, 4, 5];
konst lastElement = demoArray.pop();
konsoll.log (demoArray); // logger [1, 2, 3, 4]
konsoll.log (lastElement); // logger 5
Shift og pop er to av de vanligste JavaScript array metoder, men de kan bare komme deg så langt. Bortsett fra disse to, er det flere metoder som gir deg mer presisjon over elementene du fjerner.
3. Bruke Slett-operatøren
Alternativt kan du bruke JavaScript slette operatør for å slette et gitt matriseelement ved en bestemt indeks. Men i motsetning til andre metoder vi har sett på før, er det en hake.
De slette operatøren fjerner bare verdien, og etterlater en matrise med et tomt gap ved indeksen. Lengden på den opprinnelige matrisen forblir imidlertid den samme, selv om du sletter det siste elementet.
konst demoArray = [1, 2, 3, 4, 5];
slette demoArray[2];
konsoll.log (demoArray[2]); // logger udefinert
konsoll.log (demoArray.length); // logger 5
konsoll.log (demoArray); // logger [1, 2, tom, 4, 5]
4. Fjern et matriseelement etter verdi
Du kan også slette et spesifikt matriseelement etter verdi. Det er ingen innebygd metode for å gjøre dette, men du kan kombinere to eksisterende metoder for å gjøre dette: oversikt over() og skjøte().
Disse to vil gjøre deg i stand til å fjerne et spesifikt element fra en matrise uten å ha en indeks. Først, start med å finne indeksen til elementet av interesse ved å bruke oversikt over():
konst demoArray = [1, 2, 3, 4, 5];
konst targetElementIndex = demoArray.indexOf(4);
konsoll.log (targetElementIndex); // logger 3
IndexOf-metoden returnerer indeksen for den første forekomsten av verdien du oppgir, selv om verdien er tilstede mer enn én gang. Hvis den ikke finner noe samsvarende element i det hele tatt, returnerer indexOf -1.
Nå som du har indeksen til målelementet, kan du bruke skjøte() metode for å slette elementet i den indeksen. Alt du trenger å gjøre er å sende inn indeksen til målelementet som det første argumentet, etterfulgt av antall elementer du vil fjerne.
For å fjerne bare ett enkelt element, send en verdi på 1 som det andre argumentet:
demoArray.splice (targetElementIndex, 1);
De skjøte() metoden returnerer en matrise av de fjernede elementene og vil modifisere den opprinnelige matrisen av elementer, akkurat som skifte() og pop().
Hvis noen av disse metodene er nye for deg, sjekk ut vår fullstendig JavaScript-jukseark. Den inneholder alle array-metodene som er tilgjengelige for deg, ikke bare for å fjerne, men for andre operasjoner som å legge til, sløyfe, reversere og filtrere elementer.
Arbeid med JavaScript-matriser som en proff
Å vite hvordan man jobber med arrays i JavaScript er viktig for alle webutviklere på grunn av hvor ofte du kommer over dem.
Nøkkelkonseptene du må mestre er alle de innebygde metodene du har til rådighet som kan hjelpe deg å gjøre nesten hva som helst når du arbeider med arrays.