Storan Tempatan dan Storan Sesi dalam JavaScript
API Storan Web, termasuk Storan Tempatan dan Storan Sesi, menyediakan cara mudah untuk menyimpan pasangan nilai kunci dalam penyemak imbas pengguna. Ini adalah sebahagian daripada spesifikasi Storan Web HTML5 dan digunakan untuk data berterusan dalam aplikasi web sebelah pelanggan.
1. Storan Setempat
- Menyimpan data tanpa luput.
- Data kekal walaupun penyemak imbas ditutup dan dibuka semula.
Ciri Utama:
- Storan maksimum: ~5MB setiap domain (berbeza mengikut penyemak imbas).
- API Segerak (boleh menyekat urutan utama untuk data besar).
- Hanya boleh diakses dari asal yang sama.
Kes Penggunaan Biasa:
- Menyimpan pilihan pengguna (cth., tema, bahasa).
- Data troli beli-belah yang berterusan.
Contoh:
Menyimpan Data:
localStorage.setItem("username", "JohnDoe");
Salin selepas log masuk
Salin selepas log masuk
Mendapatkan Data:
const username = localStorage.getItem("username");
console.log(username); // Output: JohnDoe
Salin selepas log masuk
Salin selepas log masuk
Mengalih Keluar Data:
localStorage.removeItem("username");
Salin selepas log masuk
Salin selepas log masuk
Mengosongkan Semua Data:
localStorage.clear();
Salin selepas log masuk
2. Storan Sesi
- Menyimpan data hanya untuk sesi semasa.
- Data dikosongkan apabila tab atau tetingkap penyemak imbas ditutup.
Ciri Utama:
- Storan maksimum: ~5MB setiap domain (berbeza mengikut penyemak imbas).
- API Segerak.
- Hanya boleh diakses dari asal dan sesi penyemak imbas yang sama.
Kes Penggunaan Biasa:
- Menyimpan data sementara (cth., input borang semasa navigasi).
- Menjejak pilihan khusus sesi.
Contoh:
Menyimpan Data:
sessionStorage.setItem("isLoggedIn", "true");
Salin selepas log masuk
Mendapatkan Data:
const isLoggedIn = sessionStorage.getItem("isLoggedIn");
console.log(isLoggedIn); // Output: true
Salin selepas log masuk
Mengalih Keluar Data:
sessionStorage.removeItem("isLoggedIn");
Salin selepas log masuk
Mengosongkan Semua Data:
sessionStorage.clear();
Salin selepas log masuk
3. Perbezaan Antara Storan Tempatan dan Storan Sesi
Ciri |
Storan Tempatan |
Storan Sesi |
Feature |
Local Storage |
Session Storage |
Data Lifespan |
Persistent |
Cleared after session |
Storage Size |
~5MB |
~5MB |
Scope |
Same-origin policy |
Same-origin and session |
Use Case |
Long-term storage |
Temporary/session storage |
Jangka Hayat Data |
Berterusan |
Dikosongkan selepas sesi |
Saiz Storan |
~5MB |
~5MB |
Skop |
Dasar asal yang sama |
Asal dan sesi yang sama |
Kes Penggunaan |
Storan jangka panjang |
Storan sementara/sesi |
table>
4. Menyimpan Data Kompleks
Storan Tempatan dan Storan Sesi menyimpan data sebagai rentetan. Untuk menyimpan data kompleks seperti objek, anda mesti menggunakan JSON.stringify() dan JSON.parse().
Contoh:
localStorage.setItem("username", "JohnDoe");
Salin selepas log masuk
Salin selepas log masuk
5. Amalan Terbaik
-
Elakkan Menyimpan Data Sensitif:
- Data disimpan dalam teks biasa dan boleh diakses oleh JavaScript pada domain yang sama.
- Gunakan kaedah selamat (cth., kuki HTTP sahaja) untuk data sensitif.
-
Semak Sokongan Penyemak Imbas:
- Pastikan pelayar pengguna menyokong Storan Tempatan dan Storan Sesi:
const username = localStorage.getItem("username");
console.log(username); // Output: JohnDoe
Salin selepas log masuk
Salin selepas log masuk
-
Hadkan Saiz Data:
- Simpan data penting sahaja untuk mengelakkan masalah prestasi.
-
Gunakan Kekunci dengan Bijak:
- Gunakan kekunci unik untuk mengelakkan konflik dengan perpustakaan pihak ketiga.
-
Pantau Penggunaan Storan:
- Semak ruang yang tersedia untuk mengelakkan melebihi had storan.
6. Membersihkan Storan Secara Pengaturcaraan
Contoh:
localStorage.removeItem("username");
Salin selepas log masuk
Salin selepas log masuk
7. Menyahpepijat dan Mengurus Storan
Kebanyakan penyemak imbas moden menyediakan alatan pembangun untuk memeriksa Storan Setempat dan Storan Sesi.
Langkah:
- Buka Alat Pembangun (F12 atau klik kanan > Periksa).
- Navigasi ke tab "Aplikasi".
- Di bawah "Storan," lihat "Storan Tempatan" dan "Storan Sesi."
8. Ringkasan
Ciri |
Storan Tempatan |
Storan Sesi |
Feature |
Local Storage |
Session Storage |
Persistent Storage |
Yes |
No |
Accessible via JS |
Yes |
Yes |
Data Scope |
Origin |
Origin Session |
Storan Berterusan |
Ya |
Tidak |
Boleh diakses melalui JS |
Ya |
Ya |
Skop Data |
Asal usul |
Sesi Asal |
Storan Tempatan dan Storan Sesi ialah alatan penting untuk pengurusan data pihak pelanggan. Memahami masa untuk menggunakan setiap satu dan mengikuti amalan terbaik memastikan pelaksanaan yang selamat dan cekap dalam aplikasi web.
Hai, saya Abhay Singh Kathayat!
Saya seorang pembangun tindanan penuh dengan kepakaran dalam kedua-dua teknologi hadapan dan belakang. Saya bekerja dengan pelbagai bahasa pengaturcaraan dan rangka kerja untuk membina aplikasi yang cekap, berskala dan mesra pengguna.
Jangan ragu untuk menghubungi saya melalui e-mel perniagaan saya: kaashshorts28@gmail.com.
Atas ialah kandungan terperinci Memahami Storan Tempatan dan Storan Sesi dalam JavaScript. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!