Rumah >hujung hadapan web >tutorial js >JavaScript melaksanakan kemahiran menulis, membaca dan memadam kuki fungsi_javascript
Sebelum memperkenalkan teks utama, izinkan saya memperkenalkan anda kepada pengetahuan asas Cookie
Mula-mula faham apa itu kuki
"Kuki ialah pembolehubah yang disimpan pada komputer pelawat. Kuki ini dihantar setiap kali komputer yang sama meminta halaman melalui penyemak imbas. Anda boleh menggunakan JavaScript untuk mencipta dan mendapatkan semula nilai kuki itu."
Kuki ialah fail yang dibuat oleh tapak web yang dilawati untuk menyimpan maklumat penyemakan imbas, seperti maklumat profil.Dari perspektif JavaScript, kuki ialah maklumat rentetan. Maklumat ini disimpan dalam komputer klien dan digunakan untuk memindahkan maklumat antara komputer klien dan pelayan.
Maklumat ini boleh dibaca atau ditetapkan melalui document.cookie dalam JavaScript. Memandangkan kuki kebanyakannya digunakan untuk komunikasi antara klien dan pelayan, selain JavaScript, bahasa sebelah pelayan (seperti PHP) juga boleh mengakses kuki.
Asas Kuki
Kuki mempunyai had saiz Data yang disimpan dalam setiap kuki tidak boleh melebihi 4kb Jika panjang rentetan kuki melebihi 4kb, atribut ini akan mengembalikan rentetan kosong.Memandangkan kuki akhirnya disimpan dalam komputer pelanggan dalam bentuk fail, adalah sangat mudah untuk melihat dan mengubah suai kuki Inilah sebabnya sering dikatakan bahawa kuki tidak boleh menyimpan maklumat penting.
Format setiap kuki adalah seperti ini: 8759a150f7bd84877894108a4334f57e=c1654b288b2679ce39d9913d30f8b00b; kedua-dua nama dan nilai mestilah pengecam yang sah.
Kuki mempunyai tarikh luput. Secara lalai, kitaran hayat kuki tamat apabila penyemak imbas ditutup. Jika anda mahu kuki boleh digunakan selepas penyemak imbas ditutup, anda mesti menetapkan tempoh sah untuk kuki, iaitu tarikh tamat tempoh kuki.
Hasil makluman(typeof document.cookie) ialah rentetan, saya pernah fikir ia adalah array, dan saya juga membuat jenaka...囧
Soalan Lazim Kuki
Terdapat dua jenis kuki:
Kuki yang ditetapkan oleh tapak web semasa yang anda semak imbasKuki pihak ketiga daripada sumber domain lain seperti iklan atau imej terbenam pada halaman web (tapak web boleh menjejaki maklumat penggunaan anda dengan menggunakan kuki ini)
Pengetahuan asas baru sahaja menyebut isu kitaran hayat kuki Sebenarnya, kuki boleh dibahagikan secara kasar kepada dua keadaan:
Tetapkan kuki dengan masa tamat tempoh. Walaupun pelayar ditutup, maklumat ini masih akan berada pada komputer. Seperti nama log masuk dan kata laluan, jadi anda tidak perlu log masuk setiap kali anda pergi ke tapak tertentu. Kuki sedemikian boleh kekal pada komputer anda selama beberapa hari, bulan atau bahkan bertahun-tahun.
Kosongkan kuki melalui alatan penyemak imbas (terdapat alat pihak ketiga dan penyemak imbas itu sendiri juga mempunyai fungsi ini)
Kosongkan kuki dengan menetapkan tarikh luputnya
Pelayar boleh ditetapkan untuk menerima dan menafikan akses kepada kuki.
Atas sebab fungsi dan prestasi, adalah disyorkan untuk mengurangkan bilangan kuki yang digunakan dan cuba menggunakan kuki kecil sebanyak mungkin.
Butiran pengekodan kuki akan diperkenalkan secara berasingan dalam bab kuki lanjutan.
Jika ia adalah halaman pada cakera setempat, konsol Chrome tidak boleh menggunakan JavaScript untuk membaca dan menulis kuki Penyelesaiannya...tukar penyemak imbas^_^.
Bab ini berkongsi beberapa perenggan tentang operasi mudah JavaScript pada kuki, seperti menulis dan memadam kuki.
1 Tulis kuki:
//两个参数,一个是cookie的名子,一个是值 function SetCookie(name,value){ var Days = 30;//此 cookie 将被保存 30 天 var exp = new Date();//new Date("December 31, 9998"); exp.setTime(exp.getTime() + Days*24*60*60*1000); document.cookie = name + "="+ escape (value) + ";expires=" + exp.toGMTString(); }
2. Baca kuki:
//取cookies函数 function getCookie(name){ var arr = document.cookie.match(new RegExp("(^| )" + name + "=([^;]*)(;|$)")); if (arr != null) return unescape(arr[2]); return null; }
3. Padamkan kuki:
//删除cookie function delCookie(name){ var exp = new Date(); exp.setTime(exp.getTime() - 1); var cval = getCookie(name); if (cval != null) document.cookie = name + "=" + cval + ";expires=" + exp.toGMTString(); }