目录
一、本地存储
特点:
- 数据存储在用户浏览器中
- 设置、读取方便、甚至页面刷新不丢失数据
- 容量较大,sessionStorage约5M,localStorage约20M
- 只能存储字符串,可以将对象JSON.stringify()编码后存储
1.1window.sessionStorage
- 生命周期为关闭浏览器窗口
- 在统一窗口(页面)下数据可以共享
- 以键值对的形式存储使用
存储数据:
sessionStorage.setItem(key,value)
获取数据:
sessionStorage.getItem(key)
删除数据:
sessionStorage.removeItem(key)
删除所有数据:
sessionStorage.clear();
示例:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<input type="text">
<button class="set">存储数据</button>
<button class="get">获取数据</button>
<button class="remove">删除数据</button>
<button class="del">清空所有数据</button>
<script>
var ipt = document.querySelector('input')
var set = document.querySelector('.set')
var get = document.querySelector('.get')
var remove = document.querySelector('.remove')
var del = document.querySelector('.del')
set.addEventListener('click', function () {
// 存储表单中的值
var val = ipt.value;
sessionStorage.setItem('uname', val);
sessionStorage.setItem('ped', val);
})
get.addEventListener('click', function () {
// 获取表单中的值
console.log(sessionStorage.getItem('uname'));
})
remove.addEventListener('click', function () {
// 删除表单中的值
sessionStorage.removeItem('uname');
})
del.addEventListener('click', function () {
// 删除所有数据
sessionStorage.clear();
})
</script>
</body>
</html>
1.2window.localStorage
- 生命周期永久生效,除非手动删除,否则关闭页面也会存在
- 可以多窗口(页面)共享(同一浏览器可以共享)
- 以键值对的形式存储使用
使用方法与sessionStorage相同