说说js中本地存储有哪些方式及区别
# 是什么
存储在浏览器中:
- cookie
- sesstionStroage
- localStorage
- indexDB
# cookie
- 为辨别用户身份,存储的用户信息
- 浏览器自动随请求一起发送
- 容易被劫持,冒用身份信息
- 大小为4KB
# 操作
- 设置cookie(服务端)
- domain
- path
- 生效时间:max-age,expires, 失效设置过期时间
- name
set-Cookie:name=aa; domain=aa.net; path=/; Max-Age=604800 # 服务端设置
- 获取cookie
document.cookie
# localStorage
- 持久化存储,需主动清除
- 存储数据同域共享
- 大小5M
- 存储字符串
# 操作
- setItem
- getItem
- removeItem
- clear()
localStorage.setItem('name', 'fang')
localStorage.getItem('name')
localStorage.removeItem('name')
localStorage.clear()
# sesstionStorage
- 基本同localStorage
- 页面关闭即删除,不会永久存储
- 刷新不消失
# indexDB
- 真的数据库系统
- 操作复杂
- 所有操作是异步
- 存储理论上无限制
- 可存储各种类型数据
- 使用场景:富文本、大量数据
上次更新: 2021/12/19, 18:05:42