js函数收藏:获取cookie值
//先设置一段子cookie
var d = new Date();
d.setMonth(d.getMonth() + 1);
d = d.toGMTString();
var a = "name:a, age:20, addr:beijing";
var c = "user=" + escape(a);
c += ";" + "expires=" + d;
document.cookie = c; //读取所有cookie信息,包括子cookie信息的值
//返回值:对象(键:每个cookie变量【包括子cookie中的键】,值:每个cookie变量的值【包括子cookie中的值】)
function getSubCookie(){
var a = document.cookie.split(";");
var o = {};
for (var i = 0; i < a.length; i++){ //遍历cookie信息数组
a[i] && (a[i] = a[i].replace(/(^\s*)|(\s*$)/g,''));
//清除头部空格符
var b = a[i].split("=");
var c = b[1];
c && (c = c.replace(/(^\s*)|(\s*$)/g,''));
c = unescape(c);
//如果c中不包含逗号(不是子cookie),直接把c作为cookie变量的值存入对象
if(!/\,/gi.test(c)){
o[b[0]] = b[1];
}else{
var d = c.split(",");
for(var j=0; j<d.length; j++){
var e = d[j].split(":");
e[0] && (e[0] = e[0].replace(/(^\s*)|(\s*$)/g,''));
o[e[0]] = e[1];
}
}
}
return o;
}
代码片段2:封装cookie存取功能
//封装cookie存取功能,可以写入cookie,读取cookie,也可以删除cookie
function Cookie(name, value, options){
if(typeof value != 'undefined'){
options = options || {};
if(value === null){
options.expires = -1;
}
var expires = '';
if(options.expires && (typeof options.expires == 'number' || options.expires.toUTCString())){
var date;
if(typeof options.expires == 'number'){
date = new Date();
date.setTime(date.getTime() + (options.expires * 24 * 60 * 60 * 1000));
}else{
date = options.expires;
}
expires = '; expires=' + date.toUTCString();
}
var path = options.path?'; path='+options.path:'';
var domain = options.domain?'; domain='+options.domain:'';
var secure = options.secure?'; secure':'';
document.cookie = [name, '=', encodeURIComponent(value), expires, path, domain, secure].join('');
}else{
var CookieValue = null;
if(document.Cookie && document.Cookie != ''){
var Cookies = document.Cookie.split(";");
for( var i = 0; i < Cookies.length; i++){
var Cookie = (Cookies[i] || "").replace(/^\s+|\s+$/g, "");
//这个if写的屌
if(Cookie.substring(0, name.length + 1) == (name + '=')){
CookieValue = decodeURIComponent(Cookie.substring(name.length + 1));
break;
}
}
}
return CookieValue;
}
} //设置cookie
Cookie('user', 'hebe', {expires:10, path:"/", domain:"baidu.com", secure: true});
//读取cookie
Cookie('user');
//删除cookie
Cookie('user', null);
js函数收藏:获取cookie值的更多相关文章
- (转)js函数参数设置默认值
原文:http://www.cnblogs.com/RightDear/archive/2013/06/26/3156652.html js函数参数设置默认值 php有个很方便的用法是在定义函数时 ...
- js创建和获取cookie
创建cookie document.cookie='like=1'; //创建 cookie键名和值 var str = document.cookie; 获取cookie 读取cookiefunct ...
- js函数参数设置默认值
php有个很方便的用法是在定义函数时可以直接给参数设默认值,如: function simue ($a=1,$b=2){ return $a+$b;}echo simue(); //输出3echo ...
- Js设置及获取Cookie的方法
Login页面设置Cookie: <script type="text/javascript"> if(json.result=="true") { ...
- js设置与获取Cookie
/*设置与获取Cookie*/ var Cookie ={} Cookie.write = function(key, value, duration){ var d = new Date(); d. ...
- JS获取Cookie值
function GetLoginCookie() { var userCookie = getCookie("mycookie"); var loginname = userCo ...
- Js获取Cookie值的方法
function getCookie(name) { var prefix = name + "=" var start = document.cookie.indexOf(pre ...
- js javascript 如何获取某个值在数组中的下标
js 某个值在数组中的下标javascript中知道一个数组中的一个元素的值,如何获取数组下标JS 获取数组某个元素下标 函数方法 采用prototype原型实现方式,查找元素在数组中的索引值js查找 ...
- SpringMVC(十一) RequestMapping获取Cookie值
可以在控制器方法中使用类似@CookieValue("JSESSIONID") String sessionID的方式,来获取请求中的Cookie的值. 样例控制器代码 packa ...
随机推荐
- OpenStack对象存储——Swift
OpenStack Object Storage(Swift)是OpenStack开源云计算项目的子项目之一,被称为对象存储,提供了强大的扩展性.冗余和持久性.本文将从架构.原理 和实践等几方面讲述S ...
- Gamit解算脚本
这是一个解算单天的shell脚本,对于初学者很有帮助. 首先就是需要在项目(四个字符)建立rinex brdc igs 还有以年纪日命名的目录,然后提前准备好station.info和lfile.文件 ...
- 小学生之浅谈Struts2与struts1的运行机制
Struts1工作原理图: 1.初始化:struts框架的总控制器ActionServlet是一个Servlet,它在web.xml中配置成自动启动的Servlet,在启动时总控制器会读取配置文件(s ...
- hdu 2200
bc上的题目,很水,有很多方法做吧,题意大概就是给定你票数,然后让你求出票数最多的那个下标...... 之前我用两个for循环分开写,一个是读入,然后是判断,提交就wa,后来网上看了别人的,就是不能分 ...
- php捕获异常的处理
try { $result = *} catch (Exception $e) { $result = $e; } 如果try里面报异常,$result = ...
- 《CSS网站布局实录》学习笔记(五)
第五章 CSS内容排版 5.1 文字排版 5.1.1 通栏排版 进行网页通栏排版时,只要直接将段落文字放置于p或者其他对象中,再对段落文字应用间距.行距.字号等样式控制,便形成了排版雏形. 5.1.2 ...
- Swift - 38 - 枚举的基本语法
//: Playground - noun: a place where people can play import UIKit // 创建一个枚举类型就相当于创建了一个新的数据类型, 所以首字母应 ...
- JavaScript--基本包装类型+Math对象
1. 基本包装类型 1)为了便于操作基本类型值,ECMAScript提供了3个特殊的引用类Boolean, Number, String 每当读取一个基本类型值的时候,后台就会创建一个对应 ...
- Menu学习
本文由博主(YinaPan)原创,转载请注明出处:http://www.cnblogs.com/YinaPan/p/Unity_Menu.html using UnityEditor; using U ...
- 学OpenGL的一些好的网站
好的资源太多,自己懂的太少,而今迈步从头越!!fighting...... 一些OpenGL资源链接 这是前几天自己简单整理的几个链接,希望对大家有用 顺便问一下http://www.spacesim ...