javascript 中Cookie读、写与删除操作

前言:
在这个前端横行的时候,页面之间的交互需要数据的传递,有的数据通过url传参的形式可以很好地解决,但是对于部分需要改变的参数,你如说从页面A到页面B选择数据,然后从页面B将数据再传到页面A(典型的栗子就是收货地址的选择),针对这一块我是通过存储cookie来解决的。
对于cookie的操作我给出了一些简单的封装,当然也借鉴了前辈们经验,自己糅合了一下,对于cookie的操作,无非是读写和删除,我们首先来看一下写的操作,有写才有读,进而进行删除等操作。
/**
* 设置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');
}
我们有了写的操作了,那么我们再来看看对于读的操作。
/**
* 获取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就自动失效了
/**
* 删除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的一些简单操作
接下来我们来谈一点cookie的深层次的问题:cookie的跨域
Js跨域同步cookie怎么实现
document.cookie = "name=" + "value;" + "expires=" + "datatime;" + "domain=" + "" + "path=" + "/path" + "; secure";
/**
* 删除cookie
* value Cookie值
* expires 有效期截至(单位毫秒)
* path 子目录
* domain 有效域
* secure 是否安全
*/
<iframe src='http://网站:1234/test/Index' width='100' height='100' style="display:none"></iframe>
/*
*原页面js里 window.location = "http://另外一个网站:1234/GetCookie/Index?" + document.cookie;跳到另外一个站,另外一个站获取cookie,设置cookie
*/
var url = window.location.toString();//获取地址
var get = url.substring(url.indexOf("liuph"));//获取变量和变量值
var idx = get.indexOf("=");//获取变量名长度
if (idx != -1) {
var name = get.substring(0, idx);//获取变量名
var val = get.substring(idx + 1);//获取变量值
setCookie(name, val, 1);//创建Cookie
}
以上就是今天对cookie的解读。
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
# JS中Cookie读、写与删除操作
# javascript
# Cookie的操作
# JS实现Cookie读、写、删除操作工具类示例
# javascript 操作cookies详解及实例
# javascript操作cookie
# Javascript 对cookie操作详解及实例
# JS中对Cookie的操作详解
# JS封装cookie操作函数实例(设置、读取、删除)
# javascript操作Cookie(设置、读取、删除)方法详解
# js中的cookie的读写操作示例详解
# JS操作Cookie写入和读取实例代码
# JS操作Cookies包括(读取添加与删除)
# JavaScript实现cookie的操作
# 另外一个
# 作了
# 我是
# 变量名
# 这一
# 很好
# 变量值
# 在这个
# 出了
# 希望能
# 才有
# 很简单
# 再来
# 我给
# 收货
# 谢谢大家
# 跳到
# 无非是
# 来谈
# 前辈们
相关文章:
如何彻底卸载建站之星软件?
制作网站建设的公司有哪些,网站建设比较好的公司都有哪些?
Python如何创建带属性的XML节点
深圳防火门网站制作公司,深圳中天明防火门怎么编码?
建站主机与服务器功能差异如何区分?
如何使用Golang安装API文档生成工具_快速生成接口文档
c# Task.Yield 的作用是什么 它和Task.Delay(1)有区别吗
开源网站制作软件,开源网站什么意思?
如何在云服务器上快速搭建个人网站?
网站制作新手教程,新手建设一个网站需要注意些什么?
上海网站制作开发公司,上海买房比较好的网站有哪些?
猪八戒网站制作视频,开发一个猪八戒网站,大约需要多少?或者自己请程序员,需要什么程序员,多少程序员能完成?
PHP 500报错的快速解决方法
建设网站制作价格,怎样建立自己的公司网站?
建站之星伪静态规则如何正确配置?
建站主机选购指南与交易推荐:核心配置解析
一键网站制作软件,义乌购一件代发流程?
岳西云建站教程与模板下载_一站式快速建站系统操作指南
如何选择高效便捷的WAP商城建站系统?
公司网站制作费用多少,为公司建立一个网站需要哪些费用?
如何选择靠谱的建站公司加盟品牌?
如何通过FTP服务器快速搭建网站?
临沂网站制作企业,临沂第三中学官方网站?
建站之星云端配置指南:模板选择与SEO优化一键生成
建站之星如何助力网站排名飙升?揭秘高效技巧
Swift开发中switch语句值绑定模式
整蛊网站制作软件,手机不停的收到各种网站的验证码短信,是手机病毒还是人为恶搞?有这种手机病毒吗?
宝塔新建站点为何无法访问?如何排查?
建站主机系统SEO优化与智能配置核心关键词操作指南
如何在万网ECS上快速搭建专属网站?
如何在Golang中处理模块冲突_解决依赖版本不兼容问题
建站之星官网登录失败?如何快速解决?
韩国代理服务器如何选?解析IP设置技巧与跨境访问优化指南
济南专业网站制作公司,济南信息工程学校怎么样?
阿里云网站搭建费用解析:服务器价格与建站成本优化指南
网站微信制作软件,如何制作微信链接?
如何在新浪SAE免费搭建个人博客?
建站之星展会模板:智能建站与自助搭建高效解决方案
如何通过可视化优化提升建站效果?
如何在Windows 2008云服务器安全搭建网站?
微课制作网站有哪些,微课网怎么进?
如何彻底删除建站之星生成的Banner?
已有域名和空间如何搭建网站?
建站主机数据库如何配置才能提升网站性能?
如何快速生成专业多端适配建站电话?
学校建站服务器如何选型才能满足性能需求?
如何在橙子建站上传落地页?操作指南详解
早安海报制作网站推荐大全,企业早安海报怎么每天更换?
如何通过山东自助建站平台快速注册域名?
小程序网站制作需要准备什么资料,如何制作小程序?
*请认真填写需求信息,我们会在24小时内与您取得联系。