您的位置:首页 > Web前端 > JavaScript

帮助你简化Cookie操作的javascript类库 - cookie.js

2012-04-25 14:32 741 查看
日期:2012-4-24 来源:GBin1.com



做web开发的朋友不可避免的需要处理cookie,以往我们使用javascript处理cookie的过程繁琐并且容易出错,所以往往使用一些现成的处理cookie的javascript代码或者jQuery类库,使用jQuery固然非常不错,但是如果只是为了处理cookie而加载如此大的一个文件,感觉不是非常的划算。今天这里我们介绍一个帮助你简化cookie操作的javascript类库
-
cookie.js,它不依赖于任何第三方类库,并且非常小巧,只有1.4kb。希望大家喜欢!

为什么使用cookie.js?

使用原始的javascript处理cookie非常丑陋,document.cookie绝对是最丑陋的javascript功能之一。 使用cookie.js可以非常有效的帮助你处理cookie相关的功能,并且是的功能更加的有趣。

使用方式

导入类库:

<script src="cookie.min.js"></script>

设置cookie:

cookie.set('key', 'value');

或者可以同时设置多个cookie:

cookie.set({
key1: 'value1',
key2: 'value2'
});

当然,cookie.js也支持很多选项,你可以如下方式添加选项:

cookie.set('key', 'value', {
expires: 7, // expires in one week
});

以上代码中,cookie将在一周后过期。

取得cookie

cookie.get('key');

以下取得一个数组key:

cookie.get(['key1', 'key2']);

返回的一个对象,这个对象的keys将是你传的keys,对应的数值将是cookie取得的数值。

你也可以通过这个方法来设置缺省的值:

cookie.get('key', 'default value');

如果有值取回,没有的话,返回default value,同时支持多个key:

cookie.get(['key1', 'key2'], 'default value');

一下两种写法一样,cookie()是cookie.get()的缩写方式:

cookie.get('key');
// 一样效果
cookie('key');

取得所有cookie

var cookies = cookie.all();

取得所有保存的cookie,返回一个包含所有cookie的对象。

删除cookie

删除所有cookie,可以是一个key或者多个key

cookie.remove('key');
cookie.remove('key1', 'key2');
cookie.remove(['key1', 'key2']);

清空cookie

cookie.empty()

测试cookie是否可用

if (cookie.enabled()) {
// Do stuff with cookies
} else {
// Display error message or use localStorage
}

以上方式测试是否当前的cookie可用,如果不可用你可能需要考虑使用fallback方式来处理。

链式操作

cookie.empty().set('key', 'value').set('key2', 'value2').remove('key1');

主要参数:

选项选项值缺省值
expires用来设置过期天数的数字,可以是GMTStringformat或者一个日期对象浏览器关闭就过期
domain一个用来指定域名的字符串当前域名
path指定cookie访问的路径当前路径
secure是否需要使用安全链接来访问cookiefalse
来源:帮助你简化Cookie操作的javascript类库 - cookie.js
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: