回顾js中的cookie/localstorage

1.首先简单总结下cookie

cookie:可以做会话跟踪

  特点:

1、大小限制(不能超过4k)

2、每个域下cookie不能超过50个

3、有效期(和设定时间有关),过了有效期cookie会自动删除

4、cookie读取(只能访问同一个域名下的cookie)(域的限制)

5、没有设置存储时间的cookie是临时cookie,浏览器关闭自动删除

6、cookie值只能是字符串

7、cookie访问:子能访问父的cookie   但是父不能访问子的cookie;

1.1   cookie的存储

实例讲解:

基于cookie存储的注册功能:

存储cookie:

reg.onclick = function(){

//将用户名和密码以对象的形式存储

var json = {

"username" : uname.value,

"password" : upwd.value

}

//开始存储cookie

document.cookie =  "userinfo="+JSON.stringify(json) ;

//跳转到登录页面

location.href = "../b/login.html";

}

获取cookie:

//页面加载后 获取cookie数据

window.onload = function(){

//取出cookie数据

var str =  document.cookie;//userinfo={"username":"admin","password":"111"}

var _json =  JSON.parse(str.split("=")[1]);//‘{"username":"admin","password":"111"}‘

log.onclick = function(){

//如果用户输入的用户名和密码与cookie中的用户名和密码相等  提示登录成功

if( uname.value == _json.username &&  upwd.value==_json.password ){

alert("登录成功");

}else{

alert("用户名或密码错误");

}

}

}

娥姐经典案例:

cookie用法之简易购物车

存储数据:

var oUl = document.querySelector("ul");

var _json = {};//存一个对象数据

var arr = [];//存好多个对象

var pid = 1;//商品编号

//使用委托为每一个 加入购物车按钮 添加单击事件

oUl.addEventListener("click",(e)=>{

var e = e || event;

var target = e.target || e.srcElement;

if( target.className === "addMe" ){

//将当前点击的商品数据存入到一个对象中

_json = {

"pid" : pid++,

"pname" :  target.parentNode.parentNode.children[0].innerHTML,

"price" :  target.parentNode.parentNode.children[1].innerHTML

}

//将对象存入到数组中

arr.push( _json );

//将数组存入到cookie中

document.cookie = "prolist=" +  JSON.stringify(arr);

}

})

取出:

window.onload = function(){

//页面加载取出数据

var str = document.cookie;

//拆分字符串得到商品数据 数组

var arr = JSON.parse(str.split("=")[1]);

var sum = 0;//累加金额

var str = "";

//遍历数组中的数据 将数据显示到页面上

for( var i = 0 ; i < arr.length ; i++ ){

var pro = arr[i];

sum += Number(pro.price);

str +=  `<li><span>${pro.pid}</span><span>${pro.pname}</span><span>${pro.price}</span></li>`;

}

demo.innerHTML += str;

//点击按钮  显示金额

btn.onclick = function(){

t.value = sum;

}

}

2.localstorage   本地存储

基本用法: 存取改删

//存数据(增加数据)

btnSave.onclick = function(){

//定义一个localStorage

var storage = window.localStorage;

//向storage中存储数据

//方式一:

storage.sname = "jack";

//方式二:

storage["age"] = 18;

//方式三:

storage.setItem( "tel" , "132xxx" );

}

//取数据

btnGet.onclick = function(){

//定义一个localStorage

var storage = window.localStorage;

//取出localStorage中的数据  根据键取值

console.log( storage.sname , storage["age"] ,  storage.getItem("tel") );

}

//改数据

btnUpt.onclick = function(){

//定义一个localStorage

var storage = window.localStorage;

//向storage中存储数据

//方式一:

storage.sname = "lily";

//方式二:

storage["age"] = 18;

//方式三:

storage.setItem( "tel" , "156xxx" );

}

//删数据  :根据键删除

btnDel.onclick = function(){

//定义一个localStorage

var storage = window.localStorage;

//根据键删除某个数据

//storage.removeItem("tel");

//清空

storage.clear();

}

原文地址:https://www.cnblogs.com/wangwenxin123/p/11267027.html

时间: 2024-07-29 23:30:48

回顾js中的cookie/localstorage的相关文章

js中利用cookie实现记住密码功能

js中利用cookie实现记住密码功能 在登录界面添加记住密码功能,我首先想到的是在java后台中调用cookie存放账号密码,大致如下: 1 HttpServletRequest request 2 HttpServletResponse response 3 Cookie username = new Cookie("username ","cookievalue"); 4 Cookie password = new Cookie("password

js中操作cookie

cookie是一小段信息,以键/值对的信息保存在计算机硬盘上的字符串, cookie存储容量大概在4kb,不同的浏览器厂家对cookie大小的限制有微微的差异:cookie主要的本质是"识别",通过识别来做一些事情;cookie 也是无法从你的硬盘取得任何其它数据,传送电脑病毒或者获取你的电子邮件地址.cookie是有有效期的,cookie的默认有效期是从cookie生成至浏览器关闭,也可以通过设置cookie的有效期来指定其失效日期:用户也可以禁止cookie也可以手动删除cooki

js中的cookie及封装

概念参考高级编程: 1.什么是cookie cookie是用于客户端储存会话的信息: 格式key=value: 2.cookie的构成 名称:一个唯一去顶的cookie的名称,不区分大小写,cookie的名称必须是经过URL编码的: 值:存储cookie中的字符串,值必须被URL编码 域:cookie对于哪个域是有效的,所有向该域发送的请求中都会包含这个cookie信息,这个值可以包含子域,也可以不包含这个cookie信息,如果没有明确设定,那么这个域会被认作来自设置cookie的那个域 路径:

在node.js中使用COOKIE

node.js中如何向客户端发送COOKIE呢?有如下两个方案: 一.使用response.writeHead,代码示例: //设置过期时间为一分钟 1 var today = new Date(); 2 var time = today.getTime() + 60*1000; 3 var time2 = new Date(time); 4 var timeObj = time2.toGMTString(); 5 response.writeHead({ 6 'Set-Cookie':'myC

js中的cookie使用

在网上找到的资料,收藏一下 1 function getCookies(name) 2 { 3 var arr = document.cookie.match(new RegExp("(^| )"+name+"=([^;]*)(;|$)")); 4 if(arr != null) return unescape(arr[2]); return ''; 5 } 6 function setCookie(name, value, expires, path, domai

JS中document.cookie详解

什么是cookie? cookie 是存储于访问者的计算机中的变量.每当同一台计算机通过浏览器请求某个页面时,就会发送这个 cookie.你可以使用 JavaScript 来创建和取回 cookie 的值. 设置cookie 每个cookie都是一个名/值对,可以把下面这样一个字符串赋值给document.cookie: document.cookie="userId=828"; document.cookie看上去就像一个属性,可以赋不同的值.但它和一般的属性不一样,改变它的赋值并不

js中的cookie的设置获取和检查

设置cookiefunction setCookie(cname,cvalue,exdays) { var d = new Date(); d.setTime(d.getTime()+(exdays*24*60*60*1000)); var expires = "expires="+d.toGMTString(); ocument.cookie = cname + "=" + cvalue + "; " + expires; } 获取cookie

js中的cookie操作

一.js cookie   使用时把此段代码引入页面 (function (factory) { if (typeof define === 'function' && define.amd) { define(factory); } else if (typeof exports === 'object') { module.exports = factory(); } else { var _OldCookies = window.Cookies; var api = window.C

JS中对Cookie的操作详解

前言 cookie设置 参数说明: name cookie 名称,key值 value 可选,cookie 值 expire 可选,过期时间,时间戳格式 path 可选,服务器端有效路径,/ 表示整个域名有效,默认为当前设置 cookie 时页面的路径 domain 可选,该 cookie 有效的域名 secure 可选.规定是否通过安全的 HTTPS 连接来传输 cookie. 代码的封装 (function(){ var cookieObj={ 'add':function(name, va