laporan ralat baocun javascript
Pembangunan bahagian hadapan JavaScript adalah bidang yang sangat popular pada masa ini Dalam bidang ini, pemprosesan data dan penyimpanan data adalah bahagian yang sangat penting Dalam proses penyimpanan data, pelbagai masalah ralat sering berlaku, antaranya yang paling biasa ralat yang berlaku apabila JavaScript menyimpan data Mari kita menganalisis ralat dan penyelesaian yang berlaku apabila JavaScript menyimpan data.
1. Ralat data storan JavaScript biasa
- Apabila menggunakan localStorage untuk storan data, jika kita menyimpan objek secara langsung di dalamnya dan bukannya menukarnya menjadi rentetan JSON dan kemudian menyimpannya, Ralat akan muncul dan mesej ralat ialah: Klon data gagal kerana item yang disimpan mempunyai sifat yang tidak boleh diklon.
- Apabila menggunakan sessionStorage untuk storan data, jika kita menyimpan objek rujukan kitaran terus di dalamnya, ralat juga akan muncul: Mesej kitaran data tidak boleh dikekalkan dalam storan.
2 Penyelesaian
- Tukar objek kepada rentetan JSON dan kemudian simpannya. Kaedah JSON.stringify() boleh menukar objek kepada rentetan JSON dan kaedah JSON.parse() boleh menukar rentetan JSON kepada objek.
- Selesaikan masalah rujukan pekeliling. Rujukan bulat merujuk kepada situasi di mana objek merujuk antara satu sama lain, membentuk gelung tertutup. Apabila berurusan dengan rujukan bulat, kita boleh menggunakan perpustakaan pengesanan rujukan bulat Contohnya, perpustakaan fast-json-patch menyediakan fungsi pengesanan rujukan bulat.
3. Contoh analisis
Mari kita gunakan beberapa contoh untuk menggambarkan ralat dan penyelesaian yang berlaku apabila JavaScript menyimpan data.
- Mesej ralat
Apabila kami menggunakan localStorage untuk menyimpan objek, jika ia tidak ditukar kepada rentetan JSON dan kemudian disimpan, mesej ralat berikut akan muncul:
Klon data gagal kerana item yang disimpan mempunyai sifat yang tidak boleh diklon.
- Penyelesaian
Tukar objek kepada rentetan JSON dan kemudian simpan itu Itu sahaja:
let obj = {name: 'Tom', age: 18};
// Tukar objek kepada rentetan JSON
let str = JSON.stringify(obj);
// Simpan rentetan JSON
localStorage.setItem('user', str);
- Mesej ralat
Apabila kami menggunakan sessionStorage untuk menyimpan pekeliling objek rujukan, mesej ralat berikut akan muncul:
Struktur kitaran data tidak boleh dikekalkan dalam storan.
- Penyelesaian
Selesaikan masalah rujukan pekeliling, anda boleh menggunakan fungsi pengesanan rujukan bulat yang disediakan oleh pustaka fast-json-patch Kodnya adalah seperti berikut:
const jsonPatch = require('fast-json-patch')
const obj = { name. : 'Tom ', rakan: [] }
obj.friends.push(obj)
const valid = jsonPatch.validate(obj)
if (valid === undefined) {
console. log('Objek itu sah')
sessionStorage.setItem('user', JSON.stringify(obj))
} else {
console.log('Objek mempunyai rujukan bulat ')
}
Ringkasan
Ia adalah masalah yang sangat biasa bagi JavaScript untuk mendapatkan ralat semasa menyimpan data. Mesej ralat ini mengingatkan kami tentang beberapa had dan ralat yang berlaku apabila kami menyimpan data , dan kita perlu melakukan beberapa perkara khas semasa menyimpan data. Sebagai contoh, kita perlu menggunakan kaedah JSON.stringify() untuk menukar objek kepada rentetan JSON sebelum menyimpannya, dan kita juga perlu menggunakan perpustakaan pengesanan rujukan bulat untuk menyelesaikan masalah rujukan bulat. Hanya melalui pembelajaran dan amalan kita boleh menguasai pengetahuan dan kemahiran yang berkaitan dengan penyimpanan data JavaScript dengan lebih baik.
Atas ialah kandungan terperinci laporan ralat baocun javascript. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Artikel ini membincangkan useeffect dalam React, cangkuk untuk menguruskan kesan sampingan seperti pengambilan data dan manipulasi DOM dalam komponen berfungsi. Ia menerangkan penggunaan, kesan sampingan yang biasa, dan pembersihan untuk mencegah masalah seperti kebocoran memori.

Lazy memuatkan kelewatan memuatkan kandungan sehingga diperlukan, meningkatkan prestasi web dan pengalaman pengguna dengan mengurangkan masa beban awal dan beban pelayan.

Fungsi pesanan yang lebih tinggi dalam JavaScript meningkatkan ketabahan kod, kebolehgunaan semula, modulariti, dan prestasi melalui abstraksi, corak umum, dan teknik pengoptimuman.

Artikel ini membincangkan kari dalam JavaScript, teknik yang mengubah fungsi multi-argumen ke dalam urutan fungsi argumen tunggal. Ia meneroka pelaksanaan kari, faedah seperti aplikasi separa, dan kegunaan praktikal, meningkatkan kod baca

Artikel ini menerangkan algoritma perdamaian React, yang dengan cekap mengemas kini DOM dengan membandingkan pokok DOM maya. Ia membincangkan manfaat prestasi, teknik pengoptimuman, dan kesan terhadap pengalaman pengguna. Kira -kira: 159

Artikel ini menerangkan USEContext dalam React, yang memudahkan pengurusan negara dengan mengelakkan penggerudian prop. Ia membincangkan faedah seperti keadaan terpusat dan penambahbaikan prestasi melalui pengurangan semula yang dikurangkan.

Artikel membincangkan menghalang tingkah laku lalai dalam pengendali acara menggunakan kaedah pencegahanDefault (), faedahnya seperti pengalaman pengguna yang dipertingkatkan, dan isu -isu yang berpotensi seperti kebimbangan aksesibiliti.

Artikel ini membincangkan kelebihan dan kekurangan komponen terkawal dan tidak terkawal dalam React, yang memberi tumpuan kepada aspek seperti ramalan, prestasi, dan kes penggunaan. Ia menasihatkan faktor -faktor yang perlu dipertimbangkan ketika memilih di antara mereka.
