Adgang til Objekt-Egenskaber i JavaScript
Vi vil undersøge to metoder til at tilgå objekt-egenskaber: dot notation og firkantede parenteser. Disse metoder gør det muligt at hente specifikke værdier fra objekter, og vi vil diskutere situationer, hvor hver metode typisk anvendes.
Dot notation til adgang af egenskaber
Den primære og mest anvendte metode til at tilgå objekt-egenskaber er dot notation. Med denne tilgang tilgås en egenskab ved at angive objektets navn efterfulgt af et punktum og egenskabens navn.
Lad os se et eksempel, hvor vi bruger et objekt til at repræsentere en medarbejder og tilgår dets egenskaber ved hjælp af dot notation:
1234567891011const employee = { companyName: "Schuster, Mertz and Marks", name: "Miss Alma Boyer", address: "2277 Karine Plains", workedYears: 4, remote: false, }; console.log(employee.name); // Output: Miss Alma Boyer console.log(employee.address); // Output: 2277 Karine Plains console.log(employee.lastName); // Output: undefined
Bemærk
Hvis du forsøger at tilgå en egenskab, der ikke eksisterer, returnerer JavaScript
undefined;
undefinedvises ikke, når du kører koden.
Adgang til egenskaber via kantede parenteser
Den anden metode til at tilgå objekt-egenskaber er ved brug af kantede parenteser. Denne syntaks indebærer, at man angiver objektets navn efterfulgt af kantede parenteser med egenskabens navn som en streng indeni.
Denne tilgang anvendes sjældnere end punktnotation, men er nødvendig i situationer, hvor egenskabsnavnet ikke er kendt på forhånd eller er gemt i en variabel, såsom en funktionsparameter.
Her er et eksempel med det samme employee-objekt:
1234567891011const employee = { companyName: "Schuster, Mertz and Marks", name: "Miss Alma Boyer", address: "2277 Karine Plains", workedYears: 4, remote: false, }; console.log(employee["name"]); // Output: Miss Alma Boyer console.log(employee["address"]); // Output: 2277 Karine Plains console.log(employee["lastName"]); // Output: undefined
Denne metode angiver egenskabsnavnet som en streng i kantede parenteser. Det muliggør dynamisk adgang til egenskaber, hvilket kan være nyttigt ved håndtering af mere komplekse data.
Adgang til indlejrede egenskaber
Undersøg, hvordan man får adgang til indlejrede egenskaber ved hjælp af punktnotation med følgende eksempel.
Med punktnotation angives stien til den ønskede egenskab, adskilt af punktummer. Overvej et eksempel med et course-objekt:
1234567891011121314151617const course = { courseName: "Applied Science", courseDuration: "48 hours", author: { position: "Nuclear Physicist", age: 43, name: { first: "Mattie", last: "Crooks", }, }, }; console.log(course.author.position); // Output: Nuclear Physicist console.log(course.author.age); // Output: 43 console.log(course.author.name.first); // Output: Mattie console.log(course.author.name.last); // Output: Crooks
I dette eksempel tilgås egenskaber på forskellige niveauer af indlejring inden for produkt-objektet.
1. Hvilke metoder findes der til at tilgå objekt-egenskaber?
2. Når du bruger punktnotation til at tilgå objekt-egenskaber, hvad returneres der, hvis du forsøger at tilgå en egenskab, der ikke eksisterer?
3. Overvej følgende komplekse objekt, der repræsenterer en persons kontaktinformation. Hvordan kan du hente postnummeret fra person-objektet? Vælg alle mulige muligheder.
Tak for dine kommentarer!
Spørg AI
Spørg AI
Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat
Can you explain when to use dot notation versus square brackets?
What happens if I try to access a deeply nested property that doesn't exist?
Can you show more examples of dynamic property access with variables?
Awesome!
Completion rate improved to 2.27
Adgang til Objekt-Egenskaber i JavaScript
Stryg for at vise menuen
Vi vil undersøge to metoder til at tilgå objekt-egenskaber: dot notation og firkantede parenteser. Disse metoder gør det muligt at hente specifikke værdier fra objekter, og vi vil diskutere situationer, hvor hver metode typisk anvendes.
Dot notation til adgang af egenskaber
Den primære og mest anvendte metode til at tilgå objekt-egenskaber er dot notation. Med denne tilgang tilgås en egenskab ved at angive objektets navn efterfulgt af et punktum og egenskabens navn.
Lad os se et eksempel, hvor vi bruger et objekt til at repræsentere en medarbejder og tilgår dets egenskaber ved hjælp af dot notation:
1234567891011const employee = { companyName: "Schuster, Mertz and Marks", name: "Miss Alma Boyer", address: "2277 Karine Plains", workedYears: 4, remote: false, }; console.log(employee.name); // Output: Miss Alma Boyer console.log(employee.address); // Output: 2277 Karine Plains console.log(employee.lastName); // Output: undefined
Bemærk
Hvis du forsøger at tilgå en egenskab, der ikke eksisterer, returnerer JavaScript
undefined;
undefinedvises ikke, når du kører koden.
Adgang til egenskaber via kantede parenteser
Den anden metode til at tilgå objekt-egenskaber er ved brug af kantede parenteser. Denne syntaks indebærer, at man angiver objektets navn efterfulgt af kantede parenteser med egenskabens navn som en streng indeni.
Denne tilgang anvendes sjældnere end punktnotation, men er nødvendig i situationer, hvor egenskabsnavnet ikke er kendt på forhånd eller er gemt i en variabel, såsom en funktionsparameter.
Her er et eksempel med det samme employee-objekt:
1234567891011const employee = { companyName: "Schuster, Mertz and Marks", name: "Miss Alma Boyer", address: "2277 Karine Plains", workedYears: 4, remote: false, }; console.log(employee["name"]); // Output: Miss Alma Boyer console.log(employee["address"]); // Output: 2277 Karine Plains console.log(employee["lastName"]); // Output: undefined
Denne metode angiver egenskabsnavnet som en streng i kantede parenteser. Det muliggør dynamisk adgang til egenskaber, hvilket kan være nyttigt ved håndtering af mere komplekse data.
Adgang til indlejrede egenskaber
Undersøg, hvordan man får adgang til indlejrede egenskaber ved hjælp af punktnotation med følgende eksempel.
Med punktnotation angives stien til den ønskede egenskab, adskilt af punktummer. Overvej et eksempel med et course-objekt:
1234567891011121314151617const course = { courseName: "Applied Science", courseDuration: "48 hours", author: { position: "Nuclear Physicist", age: 43, name: { first: "Mattie", last: "Crooks", }, }, }; console.log(course.author.position); // Output: Nuclear Physicist console.log(course.author.age); // Output: 43 console.log(course.author.name.first); // Output: Mattie console.log(course.author.name.last); // Output: Crooks
I dette eksempel tilgås egenskaber på forskellige niveauer af indlejring inden for produkt-objektet.
1. Hvilke metoder findes der til at tilgå objekt-egenskaber?
2. Når du bruger punktnotation til at tilgå objekt-egenskaber, hvad returneres der, hvis du forsøger at tilgå en egenskab, der ikke eksisterer?
3. Overvej følgende komplekse objekt, der repræsenterer en persons kontaktinformation. Hvordan kan du hente postnummeret fra person-objektet? Vælg alle mulige muligheder.
Tak for dine kommentarer!