javascript 中Cookie读、写与删除操作(图文教程)


本文摘自PHP中文网,作者亚连,侵删。

这篇文章主要介绍了javascript 中Cookie读、写与删除操作的相关资料,需要的朋友可以参考下

javascript 中Cookie读、写与删除操作

前言:

在这个前端横行的时候,页面之间的交互需要数据的传递,有的数据通过url传参的形式可以很好地解决,但是对于部分需要改变的参数,你如说从页面A到页面B选择数据,然后从页面B将数据再传到页面A(典型的栗子就是收货地址的选择),针对这一块我是通过存储cookie来解决的。

对于cookie的操作我给出了一些简单的封装,当然也借鉴了前辈们经验,自己糅合了一下,对于cookie的操作,无非是读写和删除,我们首先来看一下写的操作,有写才有读,进而进行删除等操作。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

/**

 * 设置COOKIE

 * @param name 设置cookie的属性名

 * @param value 设置cookie的属性值

 * @param time  设置cookie的时间

 */

 

function setCookie(name, value , time) {

  time = time ? parseFloat(time) : 0 ;

  var exp = new Date();

  exp.setTime(exp.getTime() + time);

  // escape 这种编码方式过时了 改用 encodeURIComponent

  // document.cookie = name + "=" + escape(value) + ";expires=" + (time ? exp.toGMTString() : 'session');

  document.cookie = name + "=" + encodeURIComponent(value) + ";expires=" + (time ? exp.toGMTString() : 'session');

}

我们有了写的操作了,那么我们再来看看对于读的操作。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

/**

 * 获取cookie

 * @param name

 * @returns {null}

 */

 

function getCookie(name) {

  var arr, reg = new RegExp("(^| )" + name + "=([^;]*)(;|$)");

  if (arr = document.cookie.match(reg))

    //unescape这种解码方式好像过时了,可以采用decodeURIComponent解码方式

    //return unescape(arr[2]);

     return decodeURIComponent(arr[2]);

  else

    return null;

}

接下就是对cookie的删除操作了,其实这个操作很简单,就是将cookie设置过期,cookie就自动失效了

1

2

3

4

5

6

7

8

9

10

11

12

/**

 * 删除cookie

 * @param name

 */

 

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();

}

以上就是对cookie的一些简单操作

阅读剩余部分

相关阅读 >>

javascript如何获取body内容

javascript关闭后有什么影响

javascript对象封装的方法有哪些

详解javascript之作用域

js怎么设置css实现隐藏

javascript怎么实现秒转时间

css元素选择器的运作原理介绍

javascript的mvc框架有哪些

javascript怎么将字符串转为日期类型

javascript中blur是什么

更多相关阅读请进入《javascript》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...