cookie和localstorage的区别
2017-10-30 本文已影响0人
z_j_r
前言:
在强者的眼中,没有最好,只有更好
--------------------------------正文---------------------------------
键码:ev.keyCode
功能按键:
ctrl ev.ctrlKey
shift ev.shiftKey
alt ev.altKey
区别:
名称 | cookie | localstorage |
---|---|---|
大小 | 容量小 4KB | 5MB |
跨浏览器 | 不能 | 不能 |
跨域 | 不能 | 不能 |
生命周期 | 有(默认session(会话)(浏览器关闭会话结束)) | 没有生命周期 |
值 | 有很多(name=value,PATH=/,EXPIRES=过期时间) | key=value |
操作 | 麻烦 | 很简单 |
设置 | 1.document.cookie = 'name=value'; 2.设置路径/ document.cookie = 'name=value; PATH=/'; 3.设置生命周期 document.cookie = 'name=value; PATH=/; EXPIRES=过期时间'; | localStorage.key = value; |
获取 | document.cookie; | localStorage.key; |
删除 | 把过期时间过期 | delete localStorage.key;(delete obj.attr;(delete删除对象属性)) |
封装的cookie(例子):
设置:
function setCookie(sName,sValue,iDay){
if(iDay){
var oDate = new Date();
oDate.setDate(oDate.getDate()+iDay);
oDate.setHours(0,0,0,0);
document.cookie = sName+'='+sValue+'; PATH=/; EXPIRES='+oDate.toUTCString();
}else{
document.cookie = sName+'='+sValue+'; PATH=/';
}
}
获取:
function getCookie(sName){
'username=eric; age=18; gender=男'
var arr = document.cookie.split('; ');
for(var i=0;i<arr.length;i++){
var arr2 = arr[i].split('=');
if(arr2[0]==sName){
return arr2[1];
}
}
}
删除:
function removeCookie(sName){
setCookie(sName,1,-1)
}
日期格式:(统一 )
(例如:Tue, 31 Oct 2017 05:30:19 GMT )
var oDate = new Date();
1. document.write(oDate.toGMTString());
2. document.write(oDate.toUTCString());