HTML5 Storan Tempatan Dituluskan
- HTML5 Storage Local, sebahagian daripada API Penyimpanan Web, membolehkan penyimpanan data dalam penyemak imbas, dengan kapasiti 2MB hingga 10MB bergantung kepada penyemak imbas, protokol, pelabuhan, dan domain peringkat atas. Tidak seperti kuki, data ini tidak dihantar kembali ke pelayan dan berterusan di seluruh sesi dan dimulakan semula peranti.
- Walaupun storan tempatan boleh melanda prestasi kerana sifat segeraknya, ia boleh lebih cepat daripada cache asli pada peranti mudah alih. Untuk mengoptimumkan prestasi, disyorkan untuk mengehadkan bacaan dan hanya mengakses storan tempatan selepas acara Window.Olload untuk mengelakkan menyekat thread UI.
- Tidak semua penyemak imbas menyokong item tetapan dalam storan tempatan semasa mod swasta atau inkognito, dan dalam beberapa kes, data yang disimpan dalam mod persendirian dibersihkan selepas keluar. Untuk memastikan penggunaan storan tempatan yang selamat, adalah dinasihatkan untuk tidak hanya menguji sokongan tetapi juga untuk keupayaan untuk mendapatkan dan menetapkan item.
Dalam artikel ini, kami akan membincangkan cara menggunakan API ini untuk meningkatkan prestasi laman web. Saya akan mengandaikan bahawa anda tahu apa simpanan tempatan dan kaedah yang terdedah, tetapi jika anda memerlukan penyegaran, saya cadangkan anda membaca artikel gambaran keseluruhan API Penyimpanan Web oleh Colin Ihrig.
ruang cakera yang tersedia
Sebelum kita memulakan perbincangan storan tempatan, saya ingin memberi anda gambaran keseluruhan ruang cakera yang tersedia di pelayar mudah alih dan desktop utama. Jadual berikut adalah berdasarkan artikel "Bekerja dengan Kuota pada Pelayar Bergerak".
Penyemak imbas mudah alih:
Penyemak imbas desktop:
Apabila menggunakan storan tempatan, data anda akan kekal pada pelanggan dan berterusan merentasi sesi dan memulakan semula peranti. Seperti yang saya nyatakan dalam pengenalan, had API penyimpanan tempatan terikat kepada penyemak imbas tertentu (seperti yang ditunjukkan dalam jadual sebelumnya), protokol, pelabuhan, dan domain peringkat atas yang digunakan. Sebaliknya, ruang yang terdapat di cache asli penyemak imbas dikongsi di seluruh laman web, dan ia lebih kecil pada peranti mudah alih. Ia sering dibuang, kadang -kadang walaupun dalam lawatan yang sama. Peranti mudah alih mempunyai isu tambahan: mereka kurang berkuasa daripada peranti desktop, jadi mencapai prestasi yang baik adalah suatu keharusan.
Terdapat banyak perbincangan mengenai prestasi penyimpanan tempatan. Sebagai contoh, Christian Heilmann, yang dahulu dengan Mozilla, menulis "Tidak ada penyelesaian mudah untuk penyimpanan tempatan". Penyimpanan tempatan boleh melanda prestasi jika tidak digunakan dengan teliti. Perkara pertama yang perlu anda ambil kira ialah ia adalah API segerak, oleh itu ia menghalang benang UI utama. Penyimpanan tempatan menulis dan membaca data dari cakera keras, yang boleh menjadi operasi yang jauh lebih mahal daripada membaca dari ingatan. Untuk memberi anda akses kepada data, storan tempatan perlu membaca data dari cakera, dan di sinilah prestasi berlaku. Hit prestasi ini bukan isu utama dengan sedikit data, tetapi ia dapat dilihat dengan menggunakan had storan penuh.
sebagai amalan yang baik, anda harus cuba melakukan seberapa sedikit bacaan yang mungkin. Juga, kerana kami berhadapan dengan API segerak, anda harus cuba membaca data dari storan tempatan hanya selepas acara Window.onload telah dipecat, untuk mengelakkan menyekat benang UI.
perkara telah berubah
Tetapi keadaan semakin baik. Satu artikel yang diterbitkan oleh Peter McLachlan dari Mobify menjelaskan bahawa storan tempatan boleh menjadi 5x lebih cepat daripada cache asli pada peranti mudah alih.

siapa yang menggunakan storan tempatan?
Terdapat beberapa kes laman web baru -baru ini menggunakan penyimpanan tempatan ke aset cache, seperti Guardian yang menggunakan storan tempatan untuk CSS Jalan Kritikal. Anda boleh melihat persembahan ini yang diberikan pada Persidangan Velocity 2014 untuk memahami lebih lanjut mengenai bagaimana mereka dapat melakukan ini.
Juga Smashing Magazine baru -baru ini memulakan fon web caching dalam storan tempatan. Dalam artikel ini mengenai beberapa penambahbaikan prestasi yang dilaksanakan baru -baru ini di laman web mereka, mereka melaporkan menangguhkan fon web dan caching mereka dalam penyimpanan tempatan di antara perubahan yang membawa kepada penambahbaikan yang paling berkesan.
nota pada pelayaran peribadiSeperti yang dilaporkan di Caniuse.com, di bawah isu -isu yang diketahui, ketika berjalan dalam mod peribadi atau inkognito, safari, safari iOS, dan pelayar Android tidak menyokong item penetapan dalam penyimpanan tempatan.
Pelayar lain seperti Chrome dan Firefox membolehkan anda menyimpan data dalam storan tempatan di bawah mod peribadi, tetapi data dibersihkan apabila anda keluar dari mod peribadi. Ini disebabkan oleh masalah privasi, kerana seseorang mungkin menggunakan data yang berterusan untuk mengetahui tindakan pengguna ketika dalam mod persendirian.
Isu ini boleh memecahkan tingkah laku aplikasi anda jika nilai yang ditetapkan di bawah sesi sebelumnya dijangka berada di sana pada lawatan berikutnya. Oleh itu, untuk menggunakan storan tempatan dengan selamat, ia adalah amalan yang baik bukan sahaja untuk menguji sokongan, tetapi juga untuk menguji keupayaan untuk mendapatkan dan menetapkan item.
3Kesimpulan
Mungkin sudah tiba masanya kita mula meninjau semula storan tempatan dan penggunaannya yang berpotensi, terutama pada peranti mudah alih di mana kita boleh menggunakannya untuk mengelakkan kesesakan latensi. Kita boleh mula berfikir tentang cara baru untuk cache aset kita, dan kemudian melayani mereka dengan serta -merta kepada pengguna kami. Kami telah melihat sudah ada beberapa pelaksanaan penggunaan penyimpanan tempatan yang berjaya dengan cara yang tidak konvensional.
Soalan Lazim (Soalan Lazim) Mengenai Penyimpanan Tempatan HTML5
Apakah had penyimpanan maksimum untuk penyimpanan tempatan HTML5? Walau bagaimanapun, kebanyakan pelayar moden menawarkan sekitar 5MB penyimpanan setiap domain. Ini jauh lebih besar daripada 4KB (kira -kira 4096 bait) yang ditawarkan oleh cookies. Adalah penting untuk diperhatikan bahawa storan ini adalah setiap domain, bukan setiap objek penyimpanan tempatan. Tidak seperti kuki HTTP, data yang disimpan dalam storan tempatan tidak dihantar kembali ke pelayan dengan setiap permintaan HTTP. Ini bermakna ia kurang terdedah kepada jenis serangan tertentu, seperti skrip lintas tapak (XSS). Walau bagaimanapun, ia masih mudah terdedah kepada jenis serangan lain, seperti skrip lintas tapak (XSS) dan pemalsuan permintaan lintas tapak (CSRF). Oleh itu, disyorkan untuk tidak menyimpan maklumat sensitif seperti kata laluan atau nombor kad kredit dalam storan tempatan.
Bagaimana saya boleh menyemak sama ada penyemak imbas menyokong storan tempatan HTML5? Berikut adalah coretan kod mudah yang memeriksa sokongan penyimpanan tempatan:
if ('localStorage' dalam tetingkap && window ['localStorage']! == null) {
} else {
}
Bagaimana saya boleh membersihkan data dari storan tempatan html5?
Anda boleh membersihkan data dari storan tempatan HTML5 menggunakan kaedah yang jelas (). Kaedah ini menghilangkan semua pasangan nilai utama dari storan tempatan untuk domain semasa. Berikut adalah coretan kod mudah:
localStorage.clear ();
Bolehkah saya menyimpan objek atau tatasusunan dalam penyimpanan tempatan HTML5? Penyimpanan tempatan HTML5. Walau bagaimanapun, penyimpanan tempatan hanya menyokong pasangan nilai kunci rentetan. Oleh itu, anda perlu menukar objek atau array anda ke dalam rentetan menggunakan json.stringify () sebelum menyimpannya, dan menukarnya kembali ke objek atau array menggunakan json.parse () apabila mengambilnya. Perbezaan antara penyimpanan dan penyimpanan sesi tempatan?
Perbezaan utama antara penyimpanan dan penyimpanan sesi tempatan terletak pada jangka hayat dan skop mereka. Data dalam storan tempatan berterusan walaupun pelayar ditutup dan dibuka semula, sementara data dalam penyimpanan sesi dibersihkan apabila sesi halaman berakhir, iaitu, apabila penyemak imbas ditutup. Penyimpanan? Kaedah LocalStorage.GetItem (). Setiap subdomain mempunyai penyimpanan tempatan yang berasingan. Setiap penyemak imbas mempunyai penyimpanan tempatan yang berasingan. Anda boleh mengendalikan pengecualian ini dengan menangkapnya di blok percubaan dan mengambil tindakan yang sesuai, seperti membersihkan beberapa ruang atau memberitahu pengguna.
Atas ialah kandungan terperinci HTML5 Storan Tempatan Dituluskan. 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

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

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











Python lebih sesuai untuk pemula, dengan lengkung pembelajaran yang lancar dan sintaks ringkas; JavaScript sesuai untuk pembangunan front-end, dengan lengkung pembelajaran yang curam dan sintaks yang fleksibel. 1. Sintaks Python adalah intuitif dan sesuai untuk sains data dan pembangunan back-end. 2. JavaScript adalah fleksibel dan digunakan secara meluas dalam pengaturcaraan depan dan pelayan.

Penggunaan utama JavaScript dalam pembangunan web termasuk interaksi klien, pengesahan bentuk dan komunikasi tak segerak. 1) kemas kini kandungan dinamik dan interaksi pengguna melalui operasi DOM; 2) pengesahan pelanggan dijalankan sebelum pengguna mengemukakan data untuk meningkatkan pengalaman pengguna; 3) Komunikasi yang tidak bersesuaian dengan pelayan dicapai melalui teknologi Ajax.

Aplikasi JavaScript di dunia nyata termasuk pembangunan depan dan back-end. 1) Memaparkan aplikasi front-end dengan membina aplikasi senarai TODO, yang melibatkan operasi DOM dan pemprosesan acara. 2) Membina Restfulapi melalui Node.js dan menyatakan untuk menunjukkan aplikasi back-end.

Memahami bagaimana enjin JavaScript berfungsi secara dalaman adalah penting kepada pemaju kerana ia membantu menulis kod yang lebih cekap dan memahami kesesakan prestasi dan strategi pengoptimuman. 1) aliran kerja enjin termasuk tiga peringkat: parsing, penyusun dan pelaksanaan; 2) Semasa proses pelaksanaan, enjin akan melakukan pengoptimuman dinamik, seperti cache dalam talian dan kelas tersembunyi; 3) Amalan terbaik termasuk mengelakkan pembolehubah global, mengoptimumkan gelung, menggunakan const dan membiarkan, dan mengelakkan penggunaan penutupan yang berlebihan.

Python dan JavaScript mempunyai kelebihan dan kekurangan mereka sendiri dari segi komuniti, perpustakaan dan sumber. 1) Komuniti Python mesra dan sesuai untuk pemula, tetapi sumber pembangunan depan tidak kaya dengan JavaScript. 2) Python berkuasa dalam bidang sains data dan perpustakaan pembelajaran mesin, sementara JavaScript lebih baik dalam perpustakaan pembangunan dan kerangka pembangunan depan. 3) Kedua -duanya mempunyai sumber pembelajaran yang kaya, tetapi Python sesuai untuk memulakan dengan dokumen rasmi, sementara JavaScript lebih baik dengan MDNWebDocs. Pilihan harus berdasarkan keperluan projek dan kepentingan peribadi.

Kedua -dua pilihan Python dan JavaScript dalam persekitaran pembangunan adalah penting. 1) Persekitaran pembangunan Python termasuk Pycharm, Jupyternotebook dan Anaconda, yang sesuai untuk sains data dan prototaip cepat. 2) Persekitaran pembangunan JavaScript termasuk node.js, vscode dan webpack, yang sesuai untuk pembangunan front-end dan back-end. Memilih alat yang betul mengikut keperluan projek dapat meningkatkan kecekapan pembangunan dan kadar kejayaan projek.

C dan C memainkan peranan penting dalam enjin JavaScript, terutamanya digunakan untuk melaksanakan jurubahasa dan penyusun JIT. 1) C digunakan untuk menghuraikan kod sumber JavaScript dan menghasilkan pokok sintaks abstrak. 2) C bertanggungjawab untuk menjana dan melaksanakan bytecode. 3) C melaksanakan pengkompil JIT, mengoptimumkan dan menyusun kod hot-spot semasa runtime, dan dengan ketara meningkatkan kecekapan pelaksanaan JavaScript.

JavaScript digunakan secara meluas di laman web, aplikasi mudah alih, aplikasi desktop dan pengaturcaraan sisi pelayan. 1) Dalam pembangunan laman web, JavaScript mengendalikan DOM bersama -sama dengan HTML dan CSS untuk mencapai kesan dinamik dan menyokong rangka kerja seperti JQuery dan React. 2) Melalui reaktnatif dan ionik, JavaScript digunakan untuk membangunkan aplikasi mudah alih rentas platform. 3) Rangka kerja elektron membolehkan JavaScript membina aplikasi desktop. 4) Node.js membolehkan JavaScript berjalan di sisi pelayan dan menyokong permintaan serentak yang tinggi.
