hand
_1_12_242
4
返回栏目
0k
3k
5k
1k
2k
0.2k
2k
1k
2k
3k
2k
3k
2k
3k
3k
0.3k
0k
2k
0k
1k
0.1k
0k
0k
2k
2k
3k
0.2k
3k
0k
2k
2k
2k
3k
2k
2k
0k
4k
2k
2k
0k
3k
3k
2k
2k
2k
1k
3k
1k
3k
2k
1k
0.8k
2k
0k
2k
2k
2k
2k
3k
0.4k
4k
2k
5k
2k
3k
2k
3k
3k
4k
2k
3k
2k
3k
0.7k
2k
0.8k
3k
2k
4k
2k
2k
2k
2k
2k
3k
3k
3k
3k
4k
3k
3k
0k
2k
2k
0k
3k
2k
3k
1k
2k
2k
3k
3k
3k
3k
5k
3k
3k
3k
4k
3k
5k
4k
4k
4k
4k
1k
2k
2k
2k
2k
2k
2k
1k
2k
3k
3k
3k
3k
3k
2k
3k
4k
2k
2k
3k
5k
3k
3k
3k
4k
3k
3k
2k
3k
5k
4k
3k
4k
4k
2k
3k
3k
1k
3k
4k
4k
2k
2k
2k
3k
2k
4k
2k
4k
2k
4k
1k
2k
1k
2k
2k
1k
2k
2k
2k
2k
2k
2k
1k
1k
4k
3k
2k
2k
3k
3k
6k
2k
8k
3k
7k
2k
3k
3k
4k
3k
5k
4k
3k
3k
2k
2k
3k
3k
2k
2k
2k
3k
2k
6k
4k
4k
4k
4k
3k
3k
2k
4k
2k
3k
3k
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
0k
返回前端 - HTML5栏目
作者:
贺及楼
成为作者
更新日期:2025-02-27 18:15:10
在前端开发中,我们常常需要在客户端临时保存一些数据,比如用户在表单中的输入、页面的滚动位置等。HTML5 提供了两种本地存储机制:localStorage
和 sessionStorage
。今天我们就来详细探讨一下 sessionStorage
,它主要用于临时保存同一窗口(或标签页)的数据,在关闭窗口或标签页后数据会被清除。
sessionStorage
是 HTML5 新增的一个会话存储对象,它允许我们在浏览器会话期间(即窗口或标签页打开期间)临时保存数据。与 localStorage
不同,sessionStorage
中的数据仅在当前会话中有效,关闭窗口或标签页后数据会自动清除。
setItem(key, value)
setItem
方法用于将数据存储到 sessionStorage
中,它接受两个参数:key
(键)和 value
(值)。键和值都必须是字符串类型。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>sessionStorage setItem</title>
</head>
<body>
<script>
// 存储数据
sessionStorage.setItem('username', 'JohnDoe');
sessionStorage.setItem('age', '30');
console.log('数据已存储');
</script>
</body>
</html>
getItem(key)
getItem
方法用于从 sessionStorage
中获取指定键对应的值。如果键不存在,则返回 null
。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>sessionStorage getItem</title>
</head>
<body>
<script>
// 先存储数据
sessionStorage.setItem('username', 'JohnDoe');
// 获取数据
const username = sessionStorage.getItem('username');
console.log('用户名:', username);
// 获取不存在的键
const nonExistentKey = sessionStorage.getItem('address');
console.log('不存在的键的值:', nonExistentKey);
</script>
</body>
</html>
removeItem(key)
removeItem
方法用于从 sessionStorage
中删除指定键对应的数据。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>sessionStorage removeItem</title>
</head>
<body>
<script>
// 先存储数据
sessionStorage.setItem('username', 'JohnDoe');
// 删除数据
sessionStorage.removeItem('username');
// 尝试获取已删除的数据
const username = sessionStorage.getItem('username');
console.log('删除后获取用户名:', username);
</script>
</body>
</html>
clear()
clear
方法用于清空 sessionStorage
中的所有数据。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>sessionStorage clear</title>
</head>
<body>
<script>
// 先存储一些数据
sessionStorage.setItem('username', 'JohnDoe');
sessionStorage.setItem('age', '30');
// 清空所有数据
sessionStorage.clear();
// 尝试获取已清空的数据
const username = sessionStorage.getItem('username');
const age = sessionStorage.getItem('age');
console.log('清空后获取用户名:', username);
console.log('清空后获取年龄:', age);
</script>
</body>
</html>
length
属性length
属性返回 sessionStorage
中存储的数据项数量。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>sessionStorage length</title>
</head>
<body>
<script>
// 存储一些数据
sessionStorage.setItem('username', 'JohnDoe');
sessionStorage.setItem('age', '30');
// 获取存储数据的数量
const itemCount = sessionStorage.length;
console.log('存储的数据项数量:', itemCount);
</script>
</body>
</html>
sessionStorage
可以保存用户之前输入的数据,避免数据丢失。方法/属性 | 描述 |
---|---|
setItem(key, value) |
存储数据,键和值都必须是字符串 |
getItem(key) |
获取指定键对应的值,若键不存在返回 null |
removeItem(key) |
删除指定键对应的数据 |
clear() |
清空 sessionStorage 中的所有数据 |
length |
返回 sessionStorage 中存储的数据项数量 |
通过 sessionStorage
,我们可以方便地在浏览器会话期间临时保存和管理数据,为用户提供更好的交互体验。但需要注意的是,由于其数据在关闭窗口或标签页后会被清除,所以只适合存储临时数据。
前端 - HTML5
整章节共240节
快分享给你的小伙伴吧 ~