Fjerne og erstatte noder
Fjern og erstatt elementer på en trygg måte.
Fjerne og erstatte noder er en gratis leksjon i JavaScript Academy på CoddyKit. Dette er leksjon 4 av 4. Du kan lese valgfritt 3 leksjoner fra denne læringsstien gratis i sin helhet – deretter låser CoddyKit PRO opp alle leksjoner, samt praktisk øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i JavaScript Academy, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i JavaScript Academy inneholder totalt 4 leksjoner.
Ta noder ut
I tillegg til å legge til elementer trenger De ofte å fjerne eller bytte dem ut. Moderne DOM-metoder gjør dette kortfattet og lett å lese.
remove
remove kobler et element direkte fra DOM-en. Det er ikke nødvendig å ha en referanse til det overordnede elementet.
const alert = document.querySelector(".alert");
alert.remove();removeChild
Den eldre removeChild kalles på det overordnede elementet og returnerer noden som ble fjernet, slik at De kan gjenbruke den.
const list = document.querySelector("ul");
const removed = list.removeChild(list.firstElementChild);Fjerne flere
For å tømme alle underordnede elementer kan De løkke til det er tomt, eller sette innerHTML til en tom streng (raskt, men referansene forkastes).
while (list.firstChild) {
list.removeChild(list.firstChild);
}replaceWith
replaceWith bytter ut et element med én eller flere nye noder eller strenger i ett enkelt kall.
const old = document.querySelector(".placeholder");
const fresh = document.createElement("div");
old.replaceWith(fresh);replaceWith med flere noder
replaceWith godtar flere argumenter, slik at De kan bytte ut én node med flere.
old.replaceWith(headerEl, bodyEl);replaceChild
Den klassiske replaceChild(newNode, oldNode) kalles på det overordnede elementet. Vær oppmerksom på rekkefølgen: den nye noden først, den gamle sist.
list.replaceChild(newItem, oldItem);Frakoblede noder består
En node som er fjernet, blir ikke ødelagt. Hvis De beholder en referanse, kan De sette den inn igjen senere, noe som er nyttig for mønstre for å vise og skjule innhold.
const saved = panel;
panel.remove();
// later:
container.append(saved);replaceChildren
replaceChildren erstatter alle underordnede elementer i et element samtidig, eller tømmer dem når metoden kalles uten argumenter.
list.replaceChildren(itemA, itemB); // set new contents
list.replaceChildren(); // remove everythingMinne og lyttere
Når et element fjernes, slutter hendelseslytterne til elementet å utløses mens det er frakoblet. Hvis De setter det inn igjen, forblir lyttere som er knyttet direkte til selve elementet, aktive.
btn.addEventListener("click", handler);
btn.remove(); // handler will not fire while detached
container.append(btn); // handler works againVelge metode
Foretrekk remove og replaceWith i ren, moderne kode. Bruk removeChild/replaceChild når De trenger den returnerte noden, eller må støtte svært gamle miljøer.
Hurtigsjekk
Kontroller rekkefølgen på argumentene.
Oppsummering
Fjern noder med den moderne remove eller den overordnede elementbaserte removeChild. Bytt dem ut med replaceWith (moderne og med flere argumenter) eller replaceChild(newNode, oldNode). Bruk replaceChildren til å tilbakestille alle underordnede elementer. Frakoblede noder blir værende i minnet og kan settes inn igjen senere.
Lær deg JavaScript med en AI-veileder – gratis
Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.
- Kurs
- 59
- Leksjoner
- 200
Ofte stilte spørsmål
Er leksjonen «Fjerne og erstatte noder» gratis?
Ja – du kan lese valgfritt 3 av leksjonene i læringsstien JavaScript Academy, inkludert «Fjerne og erstatte noder», gratis i sin helhet her på nettet. Deretter låser CoddyKit PRO opp alle leksjoner, samt interaktiv øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Kurset i JavaScript Academy inneholder totalt 4 leksjoner.
Hva lærer jeg i «Fjerne og erstatte noder»?
Fjern og erstatt elementer på en trygg måte. Du øver på JavaScript Academy med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.
Trenger jeg erfaring for å begynne med JavaScript Academy?
Ingen tidligere erfaring er nødvendig. JavaScript Academy på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 4 av 4.
Hvor lang tid tar leksjonen «Fjerne og erstatte noder»?
De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.
Kan jeg skrive og kjøre kode i denne JavaScript Academy-leksjonen?
Ja. Alle JavaScript Academy-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.
Alle leksjonene i dette kurset
- Endre tekst- og HTML-innhold
- Opprette og sette inn elementer
- Endre attributter og klasser
- Fjerne og erstatte noder