【笔记】JS的Storage

前言

JS的WebStorageAPI学习笔记
Storage中只能存储字符串键和字符串值,不能存储其他数据类型
如果JS中存储其他类型数据,会自动调用toString()方法将其强制转换为字符串
如果强制存储对象,会被转换成字符串[Object object];如果需要存储对象,需要先进行JSON序列化;如果需要读取对象,需要先进行JSON反序列化

LocalStorage

  • 数据在浏览器中持久保存,直到被明确清除,不管用户关闭浏览器标签页还是重新启动浏览器,数据仍然存在
  • 同一域名下的所有浏览器标签页都可以共享LocalStorage数据

获取Storage长度

1
console.log(localStorage.length);

添加或修改键值对

1
localStorage.setItem("key", "value");

删除键值对

通过键删除键值对

1
localStorage.removeItem("key");

删除所有键值对

1
localStorage.clear();

获取键值对

通过键获取值

1
var value = localStorage.getItem("key");

通过索引获取键

1
var key = localStorage.key(0);

SessionStorage

  • 数据仅在当前浏览器标签页的会话期间有效,当用户关闭浏览器标签页时,存储的数据会被自动清除
  • 不同的浏览器标签页之间无法共享SessionStorage数据

获取Storage长度

1
console.log(sessionStorage.length);

添加或修改键值对

1
sessionStorage.setItem("key", "value");

删除键值对

通过键删除键值对

1
sessionStorage.removeItem("key");

删除所有键值对

1
sessionStorage.clear();

获取键值对

通过键获取值

1
var value = sessionStorage.getItem("key");

通过索引获取键

1
var key = sessionStorage.key(0);

完成