本地存储特性
- 数据存储在用户浏览器中
- 设置,读取方便,甚至网页刷新不丢失数据
- 容量较大,sessionStorage约5M,LocalStorage约20M
- 只能存储字符串,可以将对象JSON.stringify()编码后存储
window.sessionStorage
- 生命周期为关闭浏览器窗口
- 在同一个窗口(页面)下数据可以共享
- 以键值对的形式存储使用
存储数据
sessionStorage.setItem(key, value);
获取数据
sessionStorage.getItem(key);
删除数据
sessionStorage.removeItem(key);
删除所有数据
sessionStorage.clear();
代码示例
<!DOCTYPE html>
<html lang="zh-CN">
<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 input = document.querySelector('input');
var set = document.querySelector('.set');
//储存表单里面的值 重新存储会改变数据
set.addEventListener('click', function() {
var val = input.value;
sessionStorage.setItem('uname', val);
sessionStorage.setItem('pwd', val);
});
//获取存储的表单的值
var get = document.querySelector('.get');
get.addEventListener('click', function() {
console.log(sessionStorage.getItem('uname'));
});
//移除表单存储的表单的值
var remove = document.querySelector('.remove');
remove.addEventListener('click', function() {
sessionStorage.removeItem('uname');
});
//直接清空所有存储的数据
var del = document.querySelector('.del');
del.addEventListener('click', function() {
sessionStorage.clear();
})
</script>
</body>
</html>
window.LocalStorage
- 生命周期永久生效,除非手动删除否则关闭页面也会存在
- 可以多窗口(页面)共享(同一浏览器可以共享)
- 以键值对的形式存储使用
存储数据
LocalStorage.setItem(key, value);
获取数据
LocalStorage.getItem(key);
删除数据
LocalStorage.removeItem(key);
删除所有数据
LocalStorage.clear();
代码示例
<!DOCTYPE html>
<html lang="zh-CN">
<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 input = document.querySelector('input');
var set = document.querySelector('.set');
var get = document.querySelector('.get');
var remove = document.querySelector('.remove');
var del = document.querySelector('.del');
var valflag = false;
set.addEventListener('click', function() {
var val = input.value;
localStorage.setItem('username', val);
varflag = true;
});
get.addEventListener('click', function() {
console.log(localStorage.getItem('username'));
})
remove.addEventListener('click', function() {
localStorage.removeItem('username');
})
del.addEventListener('click', function() {
localStorage.clear();
})
</script>
</body>
</html>