本地存储
本地存储三种:
cookie
localStorage h5新增
sessionStorage h5新增
兼容性
cookie
localStorage IE8以下不兼容
sessionStorage IE8以下不兼容
容量:
cookie 4kb
localstorage 5m 不同的浏览器可能会有不同的大小
sessionStorage 5m
时效性:
localStorage:永久保存 只要不手动删,永远保留。
sessionStrong:一次会话,浏览器关闭,就会消失。
cookie:需要设置有效期,有效期到了会自动消息。不设置默认是session级别。
同源性:
同协议:http https file
同域名: IP 127.0.0.1 baidu.com
同端口:80
满足同源性的页面,他们会共用同一个localStorage,sessionStorage,cookie
localStorage是window对象下面的一个属性,本身也是一个对象。
存数据
只能存字符串。如果存的不是一个字符串,会自动转为字符串。如果是对象,会变成[object Object]。
取数据
删除数据
清空数据
console.log(window.localStorage);
if (window.localStorage) {
// 写localStorage的相关代码
} else {
alert("该浏览器不支持localStorage!")
}
键值对 一个键对应一个值。
存数据的三个写法:
localStorage["name"] = "张三";
localStorage.age = 18;
localStorage.setItem("sex","女");
localStorage.father = {name:"王五"}
取数据
console.log(localStorage.father);
console.log(localStorage["name"]);
console.log(localStorage.getItem("sex"));
修改数据:存数据一样的写法,如果存入的键已经存在了,就是修改它的值。
localStorage.setItem("age",28);
console.log(localStorage.getItem("age"));
删除数据
localStorage.removeItem("father");
清空数据 慎用
localStorage.clear();
cookie 存储本地数据
键值对的形式。
cookie只能在域名环境下才可以使用。
获取:document.cookie
存数据:
document.cookie = "键=值"
【注意】一次只能存一条
取数据:
document.cookie
【注意】获取cookie中所有的内容,多条记录之间用;分隔。
改数据:
和存数据一样的写法,如果之前没有这个键,就是存,有就是修改。
删数据:
没有删除的删除,只能设置过期时间。
如果要删除一条数据,只需要将它的过期时间设置为现在之前就可以了。
有效期设置:
document.cookie = "键=值;expires="+日期;
服务器默认时间:格林威治时间。 咱们是东8区。 现在是下午3点21分。 对应的格林威治:7点21分。