Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Kloning og Sammensmeltning af Objekter med Spread-Operatoren | Avancerede Objekthåndteringsteknikker
Javascript Datastrukturer

bookKloning og Sammensmeltning af Objekter med Spread-Operatoren

Spread-operatoren, angivet med ..., er et nyttigt værktøj til at oprette nye objekter ved at sammenflette og kopiere egenskaber fra eksisterende objekter. Med spread-operatoren kan følgende opgaver udføres:

  • Kloning af objekter;
  • Tilføjelse eller ændring af egenskaber;
  • Oprettelse af nye objekter.

Fokus på anvendelse af spread-operatoren med objekter.

Spread-operator

Når den bruges med objekter, kopierer spread-operatoren alle optællelige egenskaber fra kildeobjektet til et nyt objekt.

Grundlæggende syntaks:

const newObject = { ...sourceObject }; 
  • newObject: det nye objekt, der ønskes oprettet;
  • sourceObject: kildeobjektet, hvis egenskaber skal kopieres.

Kloning af et objekt

Spread-operatoren muliggør oprettelse af en lavt klonet kopi af et objekt. Dette er nyttigt, når det oprindelige objekt skal bevares, og der arbejdes med en ændret kopi.

const originalObject = {
  name: "Diamond Kite",
  color: "purple",
};

// Create a cloned object by spreading the original object
const clonedObject = { ...originalObject }; // Cloning with the help of the spread operator

// Add a new property to the cloned object
clonedObject.size = "large"; // Adding a new property to the cloned object

console.log(originalObject); // Output: {name: 'Diamond Kite', color: 'purple'}
console.log(clonedObject); // Output: {name: 'Diamond Kite', color: 'purple', size: 'large'}

I dette eksempel er clonedObject et nyt objekt, der er en klon af originalObject. Ændringer foretaget på clonedObject vil ikke påvirke originalObject. Derfor har clonedObject tre egenskaber, mens originalObject kun har to.

Tilføjelse eller ændring af egenskaber

Du kan også bruge spread-operatoren til at oprette et nyt objekt med yderligere eller ændrede egenskaber.

const waterBottle = {
  brand: "HydroFlask",
  capacity: 32,
};

const extendedWaterBottle = {
  ...waterBottle,
  color: "blue",
  capacity: 24,
};

console.log(waterBottle); // Output: {brand: 'HydroFlask', capacity: 32}
console.log(extendedWaterBottle); // Output: {brand: 'HydroFlask', capacity: 24, color: 'blue'}

I dette eksempel oprettes extendedWaterBottle ved at sprede egenskaberne fra waterBottle. Derudover tilføjes egenskaben color, og egenskaben capacity overskrives.

Sammensmeltning af objekter

Spread-operatoren kan sammenflette to eller flere objekter til ét. Dette er nyttigt ved kombination af funktioner, indstillinger, konfigurationer eller data fra forskellige kilder.

const apartmentFeatures = {
  size: "1200 square feet",
  bedrooms: 2,
  bathrooms: 2,
};

const apartmentDetails = {
  rent: 2000,
  location: "Downtown City",
};

const apartment = { ...apartmentFeatures, ...apartmentDetails };
console.log(apartment); // Output: {size: '1200 square feet', bedrooms: 2, bathrooms: 2, rent: 2000, location: 'Downtown City'}

I dette eksempel oprettes apartment ved at sammenflette egenskaberne fra apartmentFeatures og apartmentDetails.

1. Hvad er formålet med spread-operatoren (...)?

2. Hvad er syntaksen for at bruge spread-operatoren til at oprette et nyt objekt ved at kopiere egenskaber fra et eksisterende objekt?

3. I eksemplet nedenfor med sammensmeltning af objekter, hvad indeholder objektet resultObj efter brug af spread-operatoren?

question mark

Hvad er formålet med spread-operatoren (...)?

Select the correct answer

question mark

Hvad er syntaksen for at bruge spread-operatoren til at oprette et nyt objekt ved at kopiere egenskaber fra et eksisterende objekt?

Select the correct answer

question mark

I eksemplet nedenfor med sammensmeltning af objekter, hvad indeholder objektet resultObj efter brug af spread-operatoren?

Select the correct answer

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 3. Kapitel 5

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

bookKloning og Sammensmeltning af Objekter med Spread-Operatoren

Stryg for at vise menuen

Spread-operatoren, angivet med ..., er et nyttigt værktøj til at oprette nye objekter ved at sammenflette og kopiere egenskaber fra eksisterende objekter. Med spread-operatoren kan følgende opgaver udføres:

  • Kloning af objekter;
  • Tilføjelse eller ændring af egenskaber;
  • Oprettelse af nye objekter.

Fokus på anvendelse af spread-operatoren med objekter.

Spread-operator

Når den bruges med objekter, kopierer spread-operatoren alle optællelige egenskaber fra kildeobjektet til et nyt objekt.

Grundlæggende syntaks:

const newObject = { ...sourceObject }; 
  • newObject: det nye objekt, der ønskes oprettet;
  • sourceObject: kildeobjektet, hvis egenskaber skal kopieres.

Kloning af et objekt

Spread-operatoren muliggør oprettelse af en lavt klonet kopi af et objekt. Dette er nyttigt, når det oprindelige objekt skal bevares, og der arbejdes med en ændret kopi.

const originalObject = {
  name: "Diamond Kite",
  color: "purple",
};

// Create a cloned object by spreading the original object
const clonedObject = { ...originalObject }; // Cloning with the help of the spread operator

// Add a new property to the cloned object
clonedObject.size = "large"; // Adding a new property to the cloned object

console.log(originalObject); // Output: {name: 'Diamond Kite', color: 'purple'}
console.log(clonedObject); // Output: {name: 'Diamond Kite', color: 'purple', size: 'large'}

I dette eksempel er clonedObject et nyt objekt, der er en klon af originalObject. Ændringer foretaget på clonedObject vil ikke påvirke originalObject. Derfor har clonedObject tre egenskaber, mens originalObject kun har to.

Tilføjelse eller ændring af egenskaber

Du kan også bruge spread-operatoren til at oprette et nyt objekt med yderligere eller ændrede egenskaber.

const waterBottle = {
  brand: "HydroFlask",
  capacity: 32,
};

const extendedWaterBottle = {
  ...waterBottle,
  color: "blue",
  capacity: 24,
};

console.log(waterBottle); // Output: {brand: 'HydroFlask', capacity: 32}
console.log(extendedWaterBottle); // Output: {brand: 'HydroFlask', capacity: 24, color: 'blue'}

I dette eksempel oprettes extendedWaterBottle ved at sprede egenskaberne fra waterBottle. Derudover tilføjes egenskaben color, og egenskaben capacity overskrives.

Sammensmeltning af objekter

Spread-operatoren kan sammenflette to eller flere objekter til ét. Dette er nyttigt ved kombination af funktioner, indstillinger, konfigurationer eller data fra forskellige kilder.

const apartmentFeatures = {
  size: "1200 square feet",
  bedrooms: 2,
  bathrooms: 2,
};

const apartmentDetails = {
  rent: 2000,
  location: "Downtown City",
};

const apartment = { ...apartmentFeatures, ...apartmentDetails };
console.log(apartment); // Output: {size: '1200 square feet', bedrooms: 2, bathrooms: 2, rent: 2000, location: 'Downtown City'}

I dette eksempel oprettes apartment ved at sammenflette egenskaberne fra apartmentFeatures og apartmentDetails.

1. Hvad er formålet med spread-operatoren (...)?

2. Hvad er syntaksen for at bruge spread-operatoren til at oprette et nyt objekt ved at kopiere egenskaber fra et eksisterende objekt?

3. I eksemplet nedenfor med sammensmeltning af objekter, hvad indeholder objektet resultObj efter brug af spread-operatoren?

question mark

Hvad er formålet med spread-operatoren (...)?

Select the correct answer

question mark

Hvad er syntaksen for at bruge spread-operatoren til at oprette et nyt objekt ved at kopiere egenskaber fra et eksisterende objekt?

Select the correct answer

question mark

I eksemplet nedenfor med sammensmeltning af objekter, hvad indeholder objektet resultObj efter brug af spread-operatoren?

Select the correct answer

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 3. Kapitel 5
some-alt