Window localStorage 属性 | JavaScript 存储对象

返回到:JavaScript对象:JavaScript Array 存储对象

定义和使用

localStorage 和 sessionStorage 属性允许在浏览器中存储 key/value 对的数据。

localStorage 用于长久保存整个网站的数据,保存的数据没有过期时间,直到手动去删除。

localStorage 属性是只读的。

提示: 如果你只想将数据保存在当前会话中,可以使用 sessionStorage 属性, 该数据对象临时保存同一窗口(或标签页)的数据,在关闭窗口或标签页之后将会删除这些数据。

主流浏览器支持localStorage 属性。

语法

window.localStorage

保存数据语法:

localStorage.setItem("key", "value");

读取数据语法:

var lastname = localStorage.getItem("key");

删除数据语法:

localStorage.removeItem("key");

技术细节

返回值:一个存储对象

实例

DEMO1:使用 localStorage 创建一个本地存储的 name/value 对,name=”lastname” value=”Smith”, 然后检索 “lastname” 的值,并插入到 id=”result” 的元素上。

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Web176教程(Web176.com)</title>
</head>
<body>

<div id="result"></div>

<script>
// 判断浏览器是否支持
if (typeof(Storage) !== "undefined") {
    // 存储
    localStorage.setItem("lastname", "Smith");
    // 检索
    document.getElementById("result").innerHTML = localStorage.getItem("lastname");
} else {
    document.getElementById("result").innerHTML = "Sorry, your browser does not support Web Storage...";
}
</script>

</body>
</html>

DEMO2:以下实例用于记录点击按钮的次数。

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Web176教程(Web176.com)</title>
<script>
function clickCounter() {
    if(typeof(Storage) !== "undefined") {
        if (localStorage.clickcount) {
            localStorage.clickcount = Number(localStorage.clickcount)+1;
        } else {
            localStorage.clickcount = 1;
        }
        document.getElementById("result").innerHTML = "你在按钮上已经点击了 " + localStorage.clickcount + " 次。";
    } else {
        document.getElementById("result").innerHTML = "Sorry, your browser does not support web storage...";
    }
}
</script>
</head>
<body>
<p><button onclick="clickCounter()" type="button">点我!</button></p>
<div id="result"></div>
<p>点击按钮查看数字会自动增加。</p>
<p>关闭浏览器,重新打开这个页面点击按钮,可以看到之前的数据是有保留的。</p>
</body>
</html>

作者:terry,如若转载,请注明出处:https://www.web176.com/javascriptbook/brtips/3497.html

(0)
打赏 支付宝 支付宝 微信 微信
terryterry
上一篇 2021年9月7日 上午9:53
下一篇 2021年9月7日 上午10:12

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注