webStorage
1.存储内容大小
一般支持5MB左右(不同浏览器可能还不一样)
2.本地存储机制
浏览器端通过 Window.sessionStorage 和 Window.localStorage 属性来实现本地存储机制。
3.相关API
3.1 xxxxxStorage.setItem('key', 'value');
该方法接受一个键和值作为参数,会把键值对添加到存储中,如果键名存在,则更新其对应的值。
3.2 xxxxxStorage.getItem('person');
该方法接受一个键名作为参数,返回键名对应的值。
3.3 xxxxxStorage.removeItem('key');
该方法接受一个键名作为参数,并把该键名从存储中删除。
3.4 xxxxxStorage.clear()
该方法会清空存储中的所有数据。
4. 备注:
- SessionStorage 存储的内容会随着浏览器窗口关闭而消失。
- LocalStorag e存储的内容,需要手动清除才会消失。
- xxxxxStorage.getItem(xxx)如果xxx对应的value获取不到,那么getItem的返回值是null。
- JSON.parse(null)的结果依然是null。
源码
localStorage.html
<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8" />
        <title>localStorage 原生方式HTML实现</title>
    </head>
    <body>
        <h2>localStorage</h2>
        <button onclick="saveData()">点我 保存 一个数据</button>
        <button onclick="readData()">点我 读取 一个数据</button>
        <button onclick="deleteData()">点我 删除 一个数据</button>
        <button onclick="deleteAllData()">点我 清空 一个数据</button>
        <script type="text/javascript" >
            //定义一个对象:
            let p = {name:'张三', age:18}
            //点我 保存 一个数据
            function saveData(){
                //如果之前该 key 已经有值,那么此处会直接 替换为 新设置的值。
                localStorage.setItem('msg','hello!!!')
                localStorage.setItem('msg2',666)
                //字符串=JSON.stringify(对象)  将 对象 转换为 字符串
                localStorage.setItem('person',JSON.stringify(p))
            }
            //点我 读取 一个数据
            function readData(){
                console.log(localStorage.getItem('msg'))
                console.log(localStorage.getItem('msg2'))
                const result = localStorage.getItem('person')
                //JSON.parse() 将 字符串 转换为 对象:
                //如果 没有读到 person ,那么此时 result=null ,那么 JSON.parse(result) 依旧是 null
                console.log(JSON.parse(result))
                //如果 本地存储 中没有 key=msg3 的键值对,会如何呢?  返回为 null
                //console.log(localStorage.getItem('msg3'))
            }
            //点我 删除 一个数据
            function deleteData(){
                //移除 msg2
                localStorage.removeItem('msg2')
            }
            //点我 清空 一个数据
            function deleteAllData(){
                //清空: 全部都删掉。
                localStorage.clear()
            }
        </script>
    </body>
</html>sessionStorage.html
注意: localStorage 还有一个弟弟,叫 sessionStorage 。
如果会话关闭,那么就意味浏览器关闭了。
也就是 浏览器关闭,session会话就没了。
<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8" />
        <title>sessionStorage 会话存储 浏览器关闭,会话就没了</title>
    </head>
    <body>
        <h2>sessionStorage</h2>
        <button onclick="saveData()">点我 保存 一个数据</button>
        <button onclick="readData()">点我 读取 一个数据</button>
        <button onclick="deleteData()">点我 删除 一个数据</button>
        <button onclick="deleteAllData()">点我 清空 一个数据</button>
        <script type="text/javascript" >
            let p = {name:'张三',age:18}
            function saveData(){
                sessionStorage.setItem('msg','hello!!!')
                sessionStorage.setItem('msg2',666)
                sessionStorage.setItem('person',JSON.stringify(p))
            }
            function readData(){
                console.log(sessionStorage.getItem('msg'))
                console.log(sessionStorage.getItem('msg2'))
                const result = sessionStorage.getItem('person')
                console.log(JSON.parse(result))
                // console.log(sessionStorage.getItem('msg3'))
            }
            function deleteData(){
                sessionStorage.removeItem('msg2')
            }
            function deleteAllData(){
                sessionStorage.clear()
            }
        </script>
    </body>
</html> 我的书签
 我的书签
                                 添加书签
 添加书签 移除书签
 移除书签