Maison > interface Web > js tutoriel > le corps du texte

Explication détaillée des exemples d'opérations de lecture et d'écriture de cookies dans js

PHPz
Libérer: 2018-09-29 14:54:33
avant
1103 Les gens l'ont consulté

Les cookies ont une période de validité. La période de validité par défaut d'un cookie va du moment où le cookie est généré jusqu'à la fermeture du navigateur. Vous pouvez également spécifier la date d'expiration en définissant la période de validité du cookie. cookies ou supprimer les cookies manuellement

Un cookie est un petit élément d'information, une chaîne de paires clé/valeur stockée sur le disque dur de l'ordinateur. La capacité de stockage d'un cookie est d'environ 4 Ko. Les différents fabricants de navigateurs ont des valeurs légèrement différentes. restrictions sur la taille des cookies ; l'essence principale d'un cookie est de "l'identifier" pour faire quelque chose en l'identifiant ; les cookies ne peuvent pas obtenir d'autres données de votre disque dur, transmettre des virus informatiques ou obtenir votre adresse e-mail. Les cookies ont une période de validité. La période de validité par défaut d'un cookie va du moment où le cookie est généré jusqu'à la fermeture du navigateur. Vous pouvez également spécifier la date d'expiration en définissant la période de validité du cookie. Les utilisateurs peuvent également désactiver les cookies ou manuellement. supprimer les cookies.

Un cookie est une chaîne et une chaîne de texte dans un format spécifique

Format :

cookieName=cookieValue;expires=expiresDate;
path=URLpath;
domain=siteDomain
//cookie名称,失效日期,储存URL,储存域值;
Copier après la connexion

Comment créer un cookie

Nous encapsulons généralement la configuration des cookies dans une fonction :

function addCookie(sName,sValue,day) { 
var expireDate = new Date(); 
expireDate.setDate(expireDate.getDate()+day);; 
//设置失效时间 
document.cookie = escape(sName) + '=' + escape(sValue) +';expires=' + expireDate.toGMTString();6 //escape()汉字转成unicode编码,toGMTString() 把日期对象转成字符串 
}
Copier après la connexion

Lire les cookies

Après avoir ajouté des cookies, comment pouvons-nous les obtenir, très ? simple :

function getCookies() { 
var showAllCookie = ''; 
if(!document.cookie == ''){ 
var arrCookie = document.cookie.split('; '); 
//用spilt('; ')切割所有cookie保存在数组arrCookie中 
var arrLength = arrCookie.length; 
for(var i=0; i<arrLength; i++) { 
showAllCookie += &#39;c_name:&#39; + unescape(arrCookie[i].split(&#39;=&#39;)[0]) + &#39;c_value:&#39; + unescape(arrCookie[i].split(&#39;=&#39;)[1]) + &#39;<br>&#39; 9 } 
return showAllCookie; 
} 
}
Copier après la connexion

Les cookies ont une durée de validité et peuvent être supprimés automatiquement, ou ils peuvent être supprimés immédiatement en fixant leur date d'expiration

C'est aussi très simple, continuez. :

function removeCookie() { 
if(document.cookie != &#39;&#39; && confirm(&#39;你想清理所有cookie吗?&#39;)) { 
var arrCookie = document.cookie.split(&#39;; &#39;); 
var arrLength = arrCookie.length; 
var expireDate = new Date(); 
expireDate.setDate(expireDate.getDate()-1); 
for(var i=0; i<arrLength; i++) { 
var str = arrCookie[i].split(&#39;=&#39;)[0]; 
document.cookie = str+ &#39;=&#39; + &#39;;expires=&#39; + expireDate.toGMTString(); 
} 
} 
}
Copier après la connexion

Nous savons déjà comment créer, obtenir et supprimer des cookies, il est maintenant temps d'utiliser les cookies

Utilisons les cookies pour créer un minuteur simple :

var cookieCount = {}; 
cookieCount.count = function () { 
var count = parseInt(this.getCount(&#39;myCount&#39;)); 
count++; 
document.cookie = &#39;myCount=&#39; + count + &#39;&#39;; 
alert(&#39;第&#39;+count+&#39;访问&#39;); 
} 
cookieCount.setCount= function () { 
//首先得创建一个名为myCount的cookie 
var expireDate = new Date(); 
expireDate.setDate(expireDate.getDate()+1); 
document.cookie = &#39;myCount=&#39; + &#39;0&#39; +&#39;;expires=&#39; + expireDate.toGMTString(); 
} 
cookieCount.getCount = function (countName) { 
//获取名为计数cookie,为其加1 
var arrCookie = document.cookie.split(&#39;; &#39;); 
var arrLength = arrCookie.length; 
var ini = true; 
for(var i=0; i<arrLength; i++) { 
if(countName == arrCookie[i].split(&#39;=&#39;)[0]){ 
return parseInt(arrCookie[i].split(&#39;=&#39;)[1]); 
break; 
}else{ 
ini = false; 
} 
} 
if(ini == false)this.setCount(); 
return 0; 
} 
cookieCount.count();
Copier après la connexion

Chemin du cookie

Le chemin du cookie a été mentionné au début de cet article. Définissez le chemin du cookie :

Si le cookie est créé dans. un sous-répertoire du nom de domaine, le nom de domaine et autres. Ce cookie n'est pas accessible depuis le répertoire de même niveau ou le répertoire de niveau supérieur. L'avantage de définir le chemin est qu'il peut accéder au nom de domaine et aux répertoires de sous-catégorie du nom de domaine, comme suit :

document.cookie=&#39;cookieName=cookieValue;expires=expireDate;path=/&#39;
Copier après la connexion

cookie Domain

Définir le domaine : domain=siteDomain

Ceci est principalement utilisé pour partager un cookie dans le même domaine , tels que "www.taobao.com" et "ued.taobao.com" "Les deux partagent un nom de domaine "taobao.com". Si nous souhaitons que les cookies sous "www.taobao.com" soient accessibles par "ued .taobao.com", alors nous devons définir l'attribut de chemin sur "/", et définir le domaine du cookie-->document.cookie='cookieName=cookieValue;expires=expireDate;path=/;domain=taobao .com'.

Avec le développement continu des projets Web, HTML5 fournit deux propriétés, window.sessionStorage et window.localStorage, et embarque des méthodes telles que setItem, getItem, removeItem, clear, etc., permettant de stocker des données localement . L'opération est plus simple et plus pratique.

Ce qui précède représente l'intégralité du contenu de ce chapitre. Pour plus de didacticiels connexes, veuillez visiter le Tutoriel vidéo JavaScript !

Étiquettes associées:
source:jb51.net
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!