Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Destrukturering af Objekter for Mere Overskuelig Kode | Avancerede Objekthåndteringsteknikker
Javascript Datastrukturer

bookDestrukturering af Objekter for Mere Overskuelig Kode

Objektdestrukturering er en funktion, der gør det muligt at udtrække specifikke egenskaber fra et objekt og tildele dem til variable. Dette kan føre til mere kortfattet og læsbar kode, især når man arbejder med objekter, der har flere egenskaber.

Forståelse af objektdestrukturering

Objektdestrukturering er en metode til at udpakke værdier fra objekter til separate variable. Destrukturering anvender en syntaks, der ligner objekt-litteraler, men bruges på venstre side af en tildeling.

Her er den grundlæggende syntaks for objektdestrukturering:

const { property1, property2, ...} = sourceObject;
  • property1, property2 osv.: Dette er variabelnavne, hvor værdierne af de tilsvarende egenskaber fra sourceObject vil blive tildelt. Egenskaber fra objektet destruktureres efter egenskabsnavn, ikke rækkefølge. Rækkefølgen er uden betydning;
  • sourceObject: Objektet, hvorfra vi ønsker at udtrække egenskaber.

Objekt-destructuring i praksis

Overvej et eksempel, hvor vi har et objekt, der repræsenterer en persons information:

12345678910
const person = { fullName: "Amerigo Vespucci", nationality: "Italian", occupation: "Explorer, Cartographer", }; const { fullName, nationality, occupation } = person; console.log(fullName); // Output: Amerigo Vespucci console.log(nationality); // Output: Italian console.log(occupation); // Output: Explorer, Cartographer
copy

Nu kan fullName, nationality og occupation bruges som separate variabler med de tilsvarende værdier fra person-objektet.

Angiv standardværdier

Det er også muligt at angive standardværdier for variabler, hvis egenskaben ikke findes i kildeobjektet:

123456789
const person = { fullName: "Amerigo Vespucci", nationality: "Italian", }; const { fullName, nationality, birthDate = "March 9, 1454" } = person; console.log(fullName); // Output: Amerigo Vespucci console.log(nationality); // Output: Italian console.log(birthDate); // Output: March 9, 1454
copy

I dette eksempel vil variablen birthDate få tildelt værdien "March 9, 1454", hvis person-objektet ikke har en birthDate-egenskab med en værdi.

Omdøbning af variabler

Ved at bruge : syntaksen kan egenskabsværdier tildeles variabler med andre navne. For eksempel:

1234567891011
const weather = { city: "Melbourne", minTemperature: 65, maxTemperature: 78, }; const { city, minTemperature: min, maxTemperature: max } = weather; console.log(city); // Output: Melbourne console.log(min); // Output: 65 console.log(max); // Output: 78
copy

Nu kan variablerne min og max bruges i stedet for minTemperature og maxTemperature.

Indlejret objekt-destrukturering

Destrukturering kan også anvendes på indlejrede objekter. Hvis objektet for eksempel indeholder objekter som egenskaber, kan vi destrukturere de indlejrede egenskaber:

123456789101112131415161718192021
const person = { name: "Dean Mayert", profession: "Neuropsychologist", education: { degree: "Ph.D. in Neuropsychology", university: "Mind Institute", graduationYear: 2008, }, }; const { name, profession, education: { degree, university, graduationYear }, } = person; console.log(name); // Output: Dean Mayert console.log(profession); // Output: Neuropsychologist console.log(degree); // Output: Ph.D. in Neuropsychology console.log(university); // Output: Mind Institute console.log(graduationYear); // Output: 2008
copy

I dette eksempel kan både de øverste egenskaber som name og profession samt de indlejrede egenskaber som degree, university og graduationYear tilgås ved hjælp af destrukturering.

1. Hvad gør følgende kode?

2. Hvordan kan vi angive standardværdier for variabler ved objekt-destructuring?

3. Hvordan kan vi omdøbe variabler under tildeling ved objekt-destructuring?

question mark

Hvad gør følgende kode?

Select the correct answer

question mark

Hvordan kan vi angive standardværdier for variabler ved objekt-destructuring?

Select the correct answer

question mark

Hvordan kan vi omdøbe variabler under tildeling ved objekt-destructuring?

Select the correct answer

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 3. Kapitel 7

Spørg AI

expand

Spørg AI

ChatGPT

Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat

Awesome!

Completion rate improved to 2.27

bookDestrukturering af Objekter for Mere Overskuelig Kode

Stryg for at vise menuen

Objektdestrukturering er en funktion, der gør det muligt at udtrække specifikke egenskaber fra et objekt og tildele dem til variable. Dette kan føre til mere kortfattet og læsbar kode, især når man arbejder med objekter, der har flere egenskaber.

Forståelse af objektdestrukturering

Objektdestrukturering er en metode til at udpakke værdier fra objekter til separate variable. Destrukturering anvender en syntaks, der ligner objekt-litteraler, men bruges på venstre side af en tildeling.

Her er den grundlæggende syntaks for objektdestrukturering:

const { property1, property2, ...} = sourceObject;
  • property1, property2 osv.: Dette er variabelnavne, hvor værdierne af de tilsvarende egenskaber fra sourceObject vil blive tildelt. Egenskaber fra objektet destruktureres efter egenskabsnavn, ikke rækkefølge. Rækkefølgen er uden betydning;
  • sourceObject: Objektet, hvorfra vi ønsker at udtrække egenskaber.

Objekt-destructuring i praksis

Overvej et eksempel, hvor vi har et objekt, der repræsenterer en persons information:

12345678910
const person = { fullName: "Amerigo Vespucci", nationality: "Italian", occupation: "Explorer, Cartographer", }; const { fullName, nationality, occupation } = person; console.log(fullName); // Output: Amerigo Vespucci console.log(nationality); // Output: Italian console.log(occupation); // Output: Explorer, Cartographer
copy

Nu kan fullName, nationality og occupation bruges som separate variabler med de tilsvarende værdier fra person-objektet.

Angiv standardværdier

Det er også muligt at angive standardværdier for variabler, hvis egenskaben ikke findes i kildeobjektet:

123456789
const person = { fullName: "Amerigo Vespucci", nationality: "Italian", }; const { fullName, nationality, birthDate = "March 9, 1454" } = person; console.log(fullName); // Output: Amerigo Vespucci console.log(nationality); // Output: Italian console.log(birthDate); // Output: March 9, 1454
copy

I dette eksempel vil variablen birthDate få tildelt værdien "March 9, 1454", hvis person-objektet ikke har en birthDate-egenskab med en værdi.

Omdøbning af variabler

Ved at bruge : syntaksen kan egenskabsværdier tildeles variabler med andre navne. For eksempel:

1234567891011
const weather = { city: "Melbourne", minTemperature: 65, maxTemperature: 78, }; const { city, minTemperature: min, maxTemperature: max } = weather; console.log(city); // Output: Melbourne console.log(min); // Output: 65 console.log(max); // Output: 78
copy

Nu kan variablerne min og max bruges i stedet for minTemperature og maxTemperature.

Indlejret objekt-destrukturering

Destrukturering kan også anvendes på indlejrede objekter. Hvis objektet for eksempel indeholder objekter som egenskaber, kan vi destrukturere de indlejrede egenskaber:

123456789101112131415161718192021
const person = { name: "Dean Mayert", profession: "Neuropsychologist", education: { degree: "Ph.D. in Neuropsychology", university: "Mind Institute", graduationYear: 2008, }, }; const { name, profession, education: { degree, university, graduationYear }, } = person; console.log(name); // Output: Dean Mayert console.log(profession); // Output: Neuropsychologist console.log(degree); // Output: Ph.D. in Neuropsychology console.log(university); // Output: Mind Institute console.log(graduationYear); // Output: 2008
copy

I dette eksempel kan både de øverste egenskaber som name og profession samt de indlejrede egenskaber som degree, university og graduationYear tilgås ved hjælp af destrukturering.

1. Hvad gør følgende kode?

2. Hvordan kan vi angive standardværdier for variabler ved objekt-destructuring?

3. Hvordan kan vi omdøbe variabler under tildeling ved objekt-destructuring?

question mark

Hvad gør følgende kode?

Select the correct answer

question mark

Hvordan kan vi angive standardværdier for variabler ved objekt-destructuring?

Select the correct answer

question mark

Hvordan kan vi omdøbe variabler under tildeling ved objekt-destructuring?

Select the correct answer

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 3. Kapitel 7
some-alt