WeakMap dalam JavaScript - Pengantar Mudah

Blog

WeakMap adalah salah satu struktur data yang paling diremehkan dan paling jarang digunakan dalam JavaScript. Ada banyak pengembang JavaScript yang bahkan tidak tahu bahwa mereka ada. Tutorial ini akan membantu Anda memahaminya. Anda akan belajar tentang apa itu WeakMaps, cara kerjanya, dan perbedaannya dari Maps.

Pengantar singkat untuk WeakMap

Keduanya, Peta dan WeakMaps adalah struktur data baru, atau koleksi, yang diperkenalkan di [ES6]. Contoh lain dari koleksi adalah Himpunan . Sama halnya dengan array, baik Maps maupun WeakMaps memungkinkan Anda untuk menyimpan data. Dalam hal Peta dan Peta Lemah ini Anda simpan dalam bentuk pasangan nilai kunci.

Jika Anda ingin mengakses beberapa nilai yang disimpan dalam Peta, yang harus Anda lakukan adalah menggunakan |_+_| yang benar. Ini juga berfungsi untuk WeakMaps. Saat Anda ingin mengakses beberapa nilai yang disimpan dalam WeakMap, Anda juga harus menggunakan |_+_| yang benar. Keduanya, Maps dan WeakMaps memungkinkan Anda menambahkan pasangan nilai kunci baru dan menghapus yang sudah ada.

Bagaimana jika Anda tidak yakin apakah Map atau WeakMap berisi kunci tertentu? Ada metode yang dapat Anda gunakan untuk memeriksa dengan cepat apakah kuncinya ada. Jadi, di sinilah Maps dan WeakMaps bekerja dengan cara yang sama. Selain persamaan tersebut, ada beberapa perbedaan penting antara keduanya yang perlu Anda ketahui.

Perbedaan antara Maps dan WeakMaps

Perbedaan pertama antara Maps dan WeakMaps adalah jenis data yang dapat Anda gunakan. Dengan Maps, Anda dapat menggunakan tipe data apa pun yang Anda inginkan untuk membuat kunci untuk pasangan nilai kunci. Ini juga termasuk objek dan fungsi. Ini tidak berlaku untuk WeakMaps. WeakMaps memungkinkan Anda membuat kunci hanya dengan objek, bukan dengan tipe data lainnya.

Ini adalah salah satu perbedaan utama antara Maps dan WeakMaps. Perbedaan penting lainnya adalah bahwa semua kunci dalam WeakMap direferensikan dengan lemah. Ini berarti bahwa objek yang digunakan sebagai kunci untuk WeakMap masih bisa menjadi sampah yang dikumpulkan. Ini akan terjadi ketika semua referensi ke objek tersebut hilang.

Ketika objek-objek ini tidak lagi digunakan oleh bagian mana pun dari program pengumpulan sampah akan membebaskan mereka dari ingatan. Penting untuk dicatat bahwa pengumpulan sampah tidak akan segera membebaskan objek tersebut dari memori. Benda-benda ini hanya akan ditandai sebagai sampah yang dikumpulkan.

Hanya ketika siklus pengumpulan sampah berikutnya terjadi, mereka benar-benar akan dibebaskan. JavaScript menjalankan siklus ini secara otomatis. Jadi, Anda tidak perlu mengkhawatirkannya. Perbedaan besar terakhir antara Maps dan WeakMaps adalah bahwa WeakMaps tidak dapat diubah. Anda tidak dapat mengulanginya menggunakan loop atau |_+_| metode seperti yang Anda bisa melalui Maps.

Ini juga berarti bahwa Anda harus mengetahui kunci yang Anda cari. Karena kita berbicara tentang iterabilitas. WeakMaps juga tidak memiliki |_+_| Properti. Jadi, Anda tidak benar-benar tahu berapa banyak pasangan di dalam satu. Terakhir, tidak ada |_+_| metode yang memungkinkan untuk menghapus semua data dari WeakMap.

Perbedaan ini cukup penting dan memberikan batasan serius pada apa yang dapat Anda lakukan dengan WeakMaps. Namun, jangan biarkan ini mematahkan semangat Anda untuk belajar lebih banyak tentang mereka karena WeakMaps masih bisa berguna. Kami akan membicarakannya segera, tetapi pertama-tama, mari kita lihat bagaimana Anda dapat membuat WeakMaps dan apa yang dapat Anda lakukan dengannya.

#javascript #pengembangan #bahasa #pemrograman #bahasa pemrograman #teknologi #teori #web #desain web #pengembangan web

blog.alexdevero.com

WeakMap dalam JavaScript - Pengantar Mudah

WeakMap memungkinkan Anda untuk menambahkan data tambahan ke dalam Obyek milik kode lain atau pihak ketiga. Dengan fitur tautan lemah khusus dari WeakMaps, kita dapat memastikan data yang terkait dengan objek asing ini, hanya akan ada selama objek itu hidup.