Olioiden Purkaminen Selkeämmän Koodin Saavuttamiseksi
Oliodestrukturointi on ominaisuus, jonka avulla voidaan poimia tiettyjä ominaisuuksia oliosta ja asettaa ne muuttujille. Tämä voi johtaa tiiviimpään ja helpommin luettavaan koodiin, erityisesti työskenneltäessä olioiden kanssa, joilla on useita ominaisuuksia.
Oliodestrukturoinnin ymmärtäminen
Oliodestrukturointi on tapa purkaa arvoja olioista erillisiksi muuttujiksi. Destrukturointi käyttää syntaksia, joka muistuttaa oliolitteraaleja, mutta sijoituksen vasemmalla puolella.
Tässä on oliodestrukturoinnin perussyntaksi:
const { property1, property2, ...} = sourceObject;
property1,property2ja niin edelleen: Nämä ovat muuttujien nimet, joihin vastaavat arvotsourceObject-oliosta sijoitetaan. Ominaisuudet destrukturoituvat ominaisuuden nimen, ei järjestyksen mukaan. Järjestyksellä ei ole merkitystä;sourceObject: Olio, josta halutaan poimia ominaisuuksia.
Olion purku käytännössä
Tarkastellaan esimerkkiä, jossa meillä on olio, joka kuvaa henkilön tietoja:
12345678910const 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
Nyt voimme käyttää muuttujia fullName, nationality ja occupation erillisinä muuttujina, joilla on vastaavat arvot person-oliosta.
Oletusarvojen määrittäminen
Voidaan myös määrittää oletusarvot muuttujille siltä varalta, että ominaisuutta ei löydy lähdeobjektista:
123456789const 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
Tässä esimerkissä birthDate-muuttuja saa arvon "March 9, 1454", jos person-objektilla ei ole birthDate-ominaisuutta.
Muuttujien uudelleennimeäminen
Käyttämällä :-syntaksia voimme liittää ominaisuuksien arvot eri nimisiin muuttujiin. Esimerkiksi:
1234567891011const 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
Nyt voimme käyttää min- ja max-muuttujia minTemperature- ja maxTemperature-muuttujien sijaan.
Sisäkkäisten olioiden purku
Purku voidaan soveltaa myös sisäkkäisiin olioihin. Jos olio sisältää ominaisuuksina muita olioita, voimme purkaa myös nämä sisäkkäiset ominaisuudet:
123456789101112131415161718192021const 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
Tässä esimerkissä pääsemme käsiksi sekä ylimmän tason ominaisuuksiin, kuten name ja profession, että sisäkkäisiin ominaisuuksiin, kuten degree, university ja graduationYear, purun avulla.
1. Mitä seuraava koodi tekee?
2. Miten voimme määrittää oletusarvot muuttujille olion purkamisessa?
3. Miten voimme nimetä muuttujat uudelleen olion purkamisessa?
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
Olioiden Purkaminen Selkeämmän Koodin Saavuttamiseksi
Pyyhkäise näyttääksesi valikon
Oliodestrukturointi on ominaisuus, jonka avulla voidaan poimia tiettyjä ominaisuuksia oliosta ja asettaa ne muuttujille. Tämä voi johtaa tiiviimpään ja helpommin luettavaan koodiin, erityisesti työskenneltäessä olioiden kanssa, joilla on useita ominaisuuksia.
Oliodestrukturoinnin ymmärtäminen
Oliodestrukturointi on tapa purkaa arvoja olioista erillisiksi muuttujiksi. Destrukturointi käyttää syntaksia, joka muistuttaa oliolitteraaleja, mutta sijoituksen vasemmalla puolella.
Tässä on oliodestrukturoinnin perussyntaksi:
const { property1, property2, ...} = sourceObject;
property1,property2ja niin edelleen: Nämä ovat muuttujien nimet, joihin vastaavat arvotsourceObject-oliosta sijoitetaan. Ominaisuudet destrukturoituvat ominaisuuden nimen, ei järjestyksen mukaan. Järjestyksellä ei ole merkitystä;sourceObject: Olio, josta halutaan poimia ominaisuuksia.
Olion purku käytännössä
Tarkastellaan esimerkkiä, jossa meillä on olio, joka kuvaa henkilön tietoja:
12345678910const 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
Nyt voimme käyttää muuttujia fullName, nationality ja occupation erillisinä muuttujina, joilla on vastaavat arvot person-oliosta.
Oletusarvojen määrittäminen
Voidaan myös määrittää oletusarvot muuttujille siltä varalta, että ominaisuutta ei löydy lähdeobjektista:
123456789const 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
Tässä esimerkissä birthDate-muuttuja saa arvon "March 9, 1454", jos person-objektilla ei ole birthDate-ominaisuutta.
Muuttujien uudelleennimeäminen
Käyttämällä :-syntaksia voimme liittää ominaisuuksien arvot eri nimisiin muuttujiin. Esimerkiksi:
1234567891011const 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
Nyt voimme käyttää min- ja max-muuttujia minTemperature- ja maxTemperature-muuttujien sijaan.
Sisäkkäisten olioiden purku
Purku voidaan soveltaa myös sisäkkäisiin olioihin. Jos olio sisältää ominaisuuksina muita olioita, voimme purkaa myös nämä sisäkkäiset ominaisuudet:
123456789101112131415161718192021const 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
Tässä esimerkissä pääsemme käsiksi sekä ylimmän tason ominaisuuksiin, kuten name ja profession, että sisäkkäisiin ominaisuuksiin, kuten degree, university ja graduationYear, purun avulla.
1. Mitä seuraava koodi tekee?
2. Miten voimme määrittää oletusarvot muuttujille olion purkamisessa?
3. Miten voimme nimetä muuttujat uudelleen olion purkamisessa?
Kiitos palautteestasi!