ホームページ  >  記事  >  ウェブフロントエンド  >  jsの読み書き(削除)Cookieインスタンス_javascriptスキルを詳しく解説

jsの読み書き(削除)Cookieインスタンス_javascriptスキルを詳しく解説

WBOY
WBOYオリジナル
2016-05-16 17:36:331261ブラウズ
コードをコピー コードは次のとおりです:

//JS Cookie 操作メソッド
// Cookie を書き込みます
function setCookie(name,value)
{
var Days = 30;
var exp = new Date();
exp.setTime(exp.getTime() Days*24) *60* 60*1000);
document.cookie = name "="escape (value) ";expires=" exp.toGMTString();
}
//Cookie を読み取ります
function getCookie (name )
{
var arr,reg=new RegExp("(^| )" name "=([^;]*)(;|$)"); .cookie .match(reg)) return unescape(arr[2]);
else return null;
//Cookie を削除します
function delCookie(name)
{
var exp = new Date();
exp.setTime(exp.getTime() - 1);
if(cval!=null) document.cookie= 名前"= " cval ";expires=" exp.toGMTString();
}
//使用例
setCookie("name","hayden")
alert(getCookie("name") )) ;
//カスタム有効期限を設定する必要がある場合
//上記の setCookie 関数を次の 2 つの関数に置き換えます。
//プログラム コード
function setCookie2(name, value) ,time){
var strsec = getsec(time);
var exp = new Date();
exp.setTime(exp.getTime() strsec*1); name "=" エスケープ (値) ";expires=" exp.toGMTString();
}
関数 getsec(str){
alert(str); var str1=str.substring( 1,str.length)*1;
var str2=str.substring(0,1);
if (str2=="s"){
return str1*1000>} if (str2=="h"){
return str1*60*60*1000;
}else if (str2=="d"){
return str1*24*60*60*1000 ;
}
}
//これは有効期限を設定する例です:
//s20 は 20 秒を表します
//h は時間を表します (12 時間など) :h12
//d は日数、30 日です: d30
//現時点ではこれら 3 つだけが書かれ​​ています
setCookie2("name2","hayden2","s20"); getCookie("name2"));


一般的で便利な関数をいくつか示します:




コードをコピー


コードは次のとおりです。
function GetCookieVal(offset) //Cookie のデコードされた値を取得します { var endstr = document.cookie.indexOf ( ";", offset); if (endstr == -1)
endstr = document.cookie.length;
return unescape(document.cookie.substring(offset, endstr)); }
function SetCookie(name, value)
//Cookie の値を設定します
{
var expdate = new Date();
var argv = SetCookie.arguments
var argc = SetCookie.arguments.length;
var 期限切れ = (argc > 2) : null;
var path = (argc > 3) : null;ドメイン = (argc > 4) : null;
var secure = (argc > 5) : false;
if(expires!=null) expdate.getTime() ( 期限切れ * 1000 ));
document.cookie = name "=" エスケープ (値) ((期限切れ == null) ? "" : ("; 期限切れ = expdate.toGMTString() ) )
((パス == null) ? "" : ("; path=" パス)) ((ドメイン == null) ? "" : ("; ドメイン = ドメイン))
(( セキュア== true) ? "; secure" : "");
}
function DelCookie(name)
//Cookie を削除
{
var exp = new Date(); >exp.setTime (exp.getTime() - 1);
var cval = GetCookie (名前);
document.cookie = name "=" cval "; 期限切れ = exp.toGMTString(); >}
function GetCookie(name)
//Cookie の元の値を取得します
{
var arg = name "=";
var alen = arg.length; clen = document.cookie.length;
var i = 0;
while (i < clen)
{
var j = i alen; i, j) == arg)
return GetCookieVal (j);
i = document.cookie.indexOf(" ", i) 1;
if (i == 0) Break; }
return null;
}
//Test
SetCookie("sunshine","1986")
alert(GetCookie("sunshine"));
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。