Jadi apa yang kita maksud dengan struktur data? . cara menyusun data. Dalam ilmu komputer, ada banyak struktur data yang berbeda (seperti yang akan Anda lihat. ), karena cara paling efisien untuk menyimpan data tergantung pada bagaimana Anda ingin menggunakan data tersebut. Apakah Anda hanya perlu membaca data, atau apakah Anda perlu memperbaruinya? Show
Namun, untuk saat ini, kami akan membatasinya pada Lalu, apa itu struktur data bersarang? . Mari kita mulai dengan contoh sederhana Objek di dalam ObjekDi bawah ini adalah contoh sederhana membuat objek yang memiliki kunci dan nilai kunci itu adalah objek lain let schools = { georgiaInstituteOfTechnology: { address: "North Ave NW, Atlanta, GA 30332", phoneNumber: "(404) 894-2000", dateEstablished: "October 13, 1885" } }; Nah untuk mengakses objek di dalam objek, kita bisa menggunakan notasi titik seperti pada objek yang tidak bersarang Sekarang kita memiliki variabel schools.georgiaInstituteOfTechnology.address; schools.georgiaInstituteOfTechnology.phoneNumber; schools.georgiaInstituteOfTechnology.dateEstablished;_0, kita dapat menggunakannya untuk mengakses kunci di dalam objek itu Faktanya, kita bahkan tidak membutuhkan variabel perantara schools.georgiaInstituteOfTechnology.address; schools.georgiaInstituteOfTechnology.phoneNumber; schools.georgiaInstituteOfTechnology.dateEstablished;0. Kita cukup menggunakan operator titik pada pernyataan pertama seperti ini schools.georgiaInstituteOfTechnology.address; schools.georgiaInstituteOfTechnology.phoneNumber; schools.georgiaInstituteOfTechnology.dateEstablished;_ Semua pernyataan di atas bernilai sama dengan schools.georgiaInstituteOfTechnology.address; schools.georgiaInstituteOfTechnology.phoneNumber; schools.georgiaInstituteOfTechnology.dateEstablished;0 contoh Array Dalam ObjekSekarang mari kita lihat contoh objek dengan array sebagai nilainya let instructorData = { name: "Tim", favoriteHobbies: ["Sailing", "Hiking", "Coding"] }; Dalam contoh ini kita sekarang memiliki beberapa kunci. Kunci schools.georgiaInstituteOfTechnology.address; schools.georgiaInstituteOfTechnology.phoneNumber; schools.georgiaInstituteOfTechnology.dateEstablished;3 memiliki nilai string yang sederhana, schools.georgiaInstituteOfTechnology.address; schools.georgiaInstituteOfTechnology.phoneNumber; schools.georgiaInstituteOfTechnology.dateEstablished;4, tetapi kunci schools.georgiaInstituteOfTechnology.address; schools.georgiaInstituteOfTechnology.phoneNumber; schools.georgiaInstituteOfTechnology.dateEstablished;5 memiliki nilai yang lebih kompleks yaitu array Sama seperti pada contoh objek di dalam objek, kita dapat mengakses elemen dalam array dengan menggunakan notasi titik, lalu mengakses array secara normal. Untuk mendapatkan elemen pertama dalam array, kodenya adalah sebagai berikut Bagaimana Anda menambahkan hobi lain ke array schools.georgiaInstituteOfTechnology.address; schools.georgiaInstituteOfTechnology.phoneNumber; schools.georgiaInstituteOfTechnology.dateEstablished;5 di dalam objek? Objek KompleksSekarang mari kita lihat contoh yang menggabungkan objek dan larik Jadi Anda mungkin berpikir, apakah saya benar-benar akan bekerja dengan data seperti ini? . Sangat umum, ketika Anda menerima data dalam jumlah besar dari pihak ketiga, Anda akan diberikan dalam format yang menyertakan objek dan/atau array bersarang. Sangat penting bagi Anda untuk memahami cara mengakses data dalam struktur data bersarang ini. Jika Anda tidak dapat mencapai titik di mana Anda dapat dengan mudah memanipulasi struktur data bersarang, Anda akan mengalami kesulitan mengintegrasikan segala jenis data luar ke dalam aplikasi yang akan Anda bangun nanti. Salin dan tempel contoh sebelumnya ke dalam cuplikan atau buat contoh Anda sendiri untuk berlatih Mengakses dan Menetapkan nilai dalam objek bersarangMenggunakan notasi titik adalah cara yang bagus untuk mengakses nilai dalam objek bersarang. Namun, ketika secara dinamis menetapkan nilai dalam objek bersarang (ketika Anda tidak tahu persis apa nama kuncinya), Anda harus menggunakan notasi braket. Mari kita lihat contoh singkatnya. Pada contoh di bawah ini, kami ingin menulis fungsi yang menambahkan kunci ke objek bersarang Ingat, bahwa ketika menambahkan kunci ke suatu objek, jika Anda TIDAK tahu persis apa nama kunci itu (artinya kunci itu akan dibuat secara dinamis), Anda HARUS menggunakan notasi braket Menulis fungsi untuk menghasilkan nilai dalam struktur data bersarangSaat Anda berinteraksi dengan struktur data bersarang, terkadang merangkum beberapa logika Anda ke dalam sebuah fungsi akan membantu. Ini terutama benar jika Anda perlu memanipulasi struktur data dengan cara yang sama beberapa kali. Di bawah ini adalah beberapa contoh penulisan fungsi yang berinteraksi dengan struktur data bersarang dengan cara yang berbeda. Kita akan mulai dengan contoh schools.georgiaInstituteOfTechnology.address; schools.georgiaInstituteOfTechnology.phoneNumber; schools.georgiaInstituteOfTechnology.dateEstablished;_7 yang sama dari sebelumnya let instructorData = { name: "Elie", additionalData: { instructor: true, favoriteHobbies: ["Playing Cello", "Tennis", "Coding"], moreDetails: { favoriteBasketballTeam: "New York Knicks", numberOfSiblings: 3, isYoungest: true, hometown: { city: "West Orange", state: "NJ", }, citiesLivedIn: ["Seattle", "Providence", "New York"] } } }; Sekarang mari kita coba menulis beberapa fungsi yang beroperasi pada struktur data bersarang ini. Jawabannya ada di bawah - tetapi coba lakukan sendiri terlebih dahulu LatihanTulis fungsi yang disebut schools.georgiaInstituteOfTechnology.address; schools.georgiaInstituteOfTechnology.phoneNumber; schools.georgiaInstituteOfTechnology.dateEstablished;_8 konsol itu. mencatat semua nilai dalam array kotaLivedIn Tulis fungsi yang disebut schools.georgiaInstituteOfTechnology.address; schools.georgiaInstituteOfTechnology.phoneNumber; schools.georgiaInstituteOfTechnology.dateEstablished;_9 konsol itu. mencatat semua nilai di dalam objek let instructorData = { name: "Tim", favoriteHobbies: ["Sailing", "Hiking", "Coding"] };0 Mari tulis sebuah fungsi bernama let instructorData = { name: "Tim", favoriteHobbies: ["Sailing", "Hiking", "Coding"] };_1 yang menerima dua parameter, kunci dan nilai dan menambahkan kunci dan nilai ke objek let instructorData = { name: "Tim", favoriteHobbies: ["Sailing", "Hiking", "Coding"] };2 dan mengembalikan objek let instructorData = { name: "Tim", favoriteHobbies: ["Sailing", "Hiking", "Coding"] };2 Terakhir, mari tulis fungsi bernama let instructorData = { name: "Tim", favoriteHobbies: ["Sailing", "Hiking", "Coding"] };4 yang menghapus kunci di objek let instructorData = { name: "Tim", favoriteHobbies: ["Sailing", "Hiking", "Coding"] };2 dan mengembalikan objek let instructorData = { name: "Tim", favoriteHobbies: ["Sailing", "Hiking", "Coding"] };2 (kunci baru yang ditambahkan di atas tidak termasuk dalam contoh ini) SolusiUntuk sebagian besar fungsi ini, menyimpan informasi bersarang dalam sebuah variabel akan berguna untuk menghindari keharusan mengetiknya berkali-kali. Berikut adalah solusi untuk masalah sebelumnya displayCities function displayCities(){ let cityArray = instructorData.additionalData.moreDetails.citiesLivedIn; for(let i=0; i< cityArray.length; i++){ console.log(cityArray[i]); } } tampilkan Data Kota Asal function displayHometownData(){ let hometownObject = instructorData.additionalData.moreDetails.hometown; for(let key in hometownObject){ console.log(hometownObject[key]); } } addDetail function addDetail(key,value){ let detailsObject = instructorData.additionalData.moreDetails; detailsObject[key] = value; return detailsObject; } hapusDetail Kita perlu memastikan bahwa kita menggunakan notasi braket dan bukan notasi titik saat mengakses objek kita. Karena kita tidak mengetahui nama kunci sampai fungsi dipanggil, kita perlu mengakses kunci itu secara dinamis, yang harus dilakukan dengan menggunakan notasi braket Apa contoh objek bersarang?Objek bersarang adalah objek yang berada di dalam objek lain. Pada contoh berikut 'kendaraan' adalah objek yang berada di dalam objek utama yang disebut 'orang' . Menggunakan notasi titik, properti (mobil) objek bersarang diakses.
Apa itu objek bersarang?'Bersarang' adalah teknik di mana Anda menyisipkan atau 'menyarangkan' objek di tengah urutan penggabungan objek lain untuk mencegah pembuatan konektor panjang. This feature is particularly useful with repeating motifs where long connectors may be generated. Consider this design...
Bagaimana Anda mendeklarasikan objek bersarang?Untuk membuat objek bersarang, panggil createNestedObject() . Untuk membuat array bersarang, panggil createNestedArray().
Apa objek dengan properti bersarang?Properti bertingkat dari suatu objek adalah properti di dalam properti . Sebuah objek dapat berisi objek lain sebagai properti. kita dapat mengalokasikan objek lain sebagai properti dari suatu objek. Dengan kata lain, suatu objek dapat memiliki properti yang merupakan objek lain. |