sessionStorage 生命周期
不是在整个网站运行期间吗?还是单个页面而已?
问题:
当我在当前页面打开,并且按下 存储按钮
, sessionStorage
只存在当前页面而已, 当我在另外一个窗口打开这个页面时,发现这个页面的sessionStorage
为空,百思不得其解。
源代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
</head>
<body>
<button class="btn">存储</button>
<script>
function $(ele) {
return document.querySelector(ele);
}
$('.btn').addEventListener('click', function() {
sessionStorage.setItem('username', 'yy');
});
console.log(sessionStorage.getItem('username'));
</script>
</body>
</html>
sessionStorage 属性允许你访问一个 session Storage 对象。它与 localStorage 相似,不同之处在于 localStorage 里面存储的数据没有过期时间设置,而存储在 sessionStorage 里面的数据在页面会话结束时会被清除。页面会话在浏览器打开期间一直保持,并且重新加载或恢复页面仍会保持原来的页面会话。
在新标签或窗口打开一个页面会初始化一个新的会话
,这点和 session cookie 的运行方式不同。具体见这里