JavaScript-Olioiden Ominaisuuksien Käsittely
Tarkastelemme kahta tapaa olion ominaisuuksien käsittelemiseen: pisteoperaattori ja hakasulut. Näiden menetelmien avulla voidaan hakea tiettyjä arvoja olioista, ja käsittelemme tilanteita, joissa kumpaakin tapaa käytetään yleisesti.
Ominaisuuksien käsittely pisteoperaattorilla
Ensisijainen ja yleisimmin käytetty tapa olion ominaisuuksien käsittelemiseen on pisteoperaattori. Tässä lähestymistavassa ominaisuus haetaan määrittelemällä olion nimi, piste ja ominaisuuden nimi.
Tarkastellaan esimerkkiä, jossa käytetään oliota työntekijän kuvaamiseen ja käsitellään sen ominaisuuksia pisteoperaattorilla:
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
Huomio
Jos yrität käyttää ominaisuutta, jota ei ole olemassa, JavaScript palauttaa
undefined;
undefinedei tulostu, kun suoritat koodin.
Ominaisuuksien käsittely hakasulkeilla
Toinen tapa käyttää olion ominaisuuksia on hakasulkeiden avulla. Tässä syntaksissa määritellään olion nimi, jota seuraavat hakasulkeet, joiden sisällä ominaisuuden nimi on merkkijonona.
Tätä lähestymistapaa käytetään harvemmin kuin pisteoperaattoria, mutta se on välttämätön tilanteissa, joissa ominaisuuden nimi ei ole tiedossa etukäteen tai se on tallennettu muuttujaan, kuten funktion parametrina.
Tässä esimerkki samasta employee-oliosta:
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
Tämä menetelmä käyttää ominaisuuden nimeä merkkijonona hakasulkeiden sisällä. Se mahdollistaa dynaamisen ominaisuuksien käsittelyn, mikä on hyödyllistä monimutkaisempien tietorakenteiden kanssa.
Sisäkkäisten ominaisuuksien käsittely
Tarkastellaan, miten sisäkkäisiin ominaisuuksiin päästään käsiksi pisteoperaattorilla seuraavan esimerkin avulla.
Pisteoperaattorilla määritellään polku haluttuun ominaisuuteen pisteillä erotettuna. Tarkastellaan esimerkkiä, jossa käytetään course-oliota:
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
Tässä esimerkissä käytetään ominaisuuksien hakua eri syvyystasoilla product-oliosta.
1. Mitkä ovat tavat hakea olion ominaisuuksia?
2. Kun käytät pisteoperaattoria objektin ominaisuuksien hakemiseen, mitä palautetaan, jos yrität hakea ominaisuutta, jota ei ole olemassa?
3. Tarkastele seuraavaa monimutkaista objektia, joka kuvaa henkilön yhteystietoja. Kuinka voit hakea postinumeron person-objektista? Valitse kaikki mahdolliset vaihtoehdot.
Kiitos palautteestasi!
Kysy tekoälyä
Kysy tekoälyä
Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme
Awesome!
Completion rate improved to 2.27
JavaScript-Olioiden Ominaisuuksien Käsittely
Pyyhkäise näyttääksesi valikon
Tarkastelemme kahta tapaa olion ominaisuuksien käsittelemiseen: pisteoperaattori ja hakasulut. Näiden menetelmien avulla voidaan hakea tiettyjä arvoja olioista, ja käsittelemme tilanteita, joissa kumpaakin tapaa käytetään yleisesti.
Ominaisuuksien käsittely pisteoperaattorilla
Ensisijainen ja yleisimmin käytetty tapa olion ominaisuuksien käsittelemiseen on pisteoperaattori. Tässä lähestymistavassa ominaisuus haetaan määrittelemällä olion nimi, piste ja ominaisuuden nimi.
Tarkastellaan esimerkkiä, jossa käytetään oliota työntekijän kuvaamiseen ja käsitellään sen ominaisuuksia pisteoperaattorilla:
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
Huomio
Jos yrität käyttää ominaisuutta, jota ei ole olemassa, JavaScript palauttaa
undefined;
undefinedei tulostu, kun suoritat koodin.
Ominaisuuksien käsittely hakasulkeilla
Toinen tapa käyttää olion ominaisuuksia on hakasulkeiden avulla. Tässä syntaksissa määritellään olion nimi, jota seuraavat hakasulkeet, joiden sisällä ominaisuuden nimi on merkkijonona.
Tätä lähestymistapaa käytetään harvemmin kuin pisteoperaattoria, mutta se on välttämätön tilanteissa, joissa ominaisuuden nimi ei ole tiedossa etukäteen tai se on tallennettu muuttujaan, kuten funktion parametrina.
Tässä esimerkki samasta employee-oliosta:
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
Tämä menetelmä käyttää ominaisuuden nimeä merkkijonona hakasulkeiden sisällä. Se mahdollistaa dynaamisen ominaisuuksien käsittelyn, mikä on hyödyllistä monimutkaisempien tietorakenteiden kanssa.
Sisäkkäisten ominaisuuksien käsittely
Tarkastellaan, miten sisäkkäisiin ominaisuuksiin päästään käsiksi pisteoperaattorilla seuraavan esimerkin avulla.
Pisteoperaattorilla määritellään polku haluttuun ominaisuuteen pisteillä erotettuna. Tarkastellaan esimerkkiä, jossa käytetään course-oliota:
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
Tässä esimerkissä käytetään ominaisuuksien hakua eri syvyystasoilla product-oliosta.
1. Mitkä ovat tavat hakea olion ominaisuuksia?
2. Kun käytät pisteoperaattoria objektin ominaisuuksien hakemiseen, mitä palautetaan, jos yrität hakea ominaisuutta, jota ei ole olemassa?
3. Tarkastele seuraavaa monimutkaista objektia, joka kuvaa henkilön yhteystietoja. Kuinka voit hakea postinumeron person-objektista? Valitse kaikki mahdolliset vaihtoehdot.
Kiitos palautteestasi!