Effect:
Demo:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>储存搜索记录到本地</title> </head> <body> <input type="search"> <input type="submit" value="搜索"> <div></div> </body> </html> <script> //1.0 原生js,获取元素 var search = document.querySelector("input[type=search]"); var submit = document.querySelector("input[type=submit]"); var div = document.querySelector('div'); //3.0 本地仓库获取值,如果没有就不执行 var getSearchRecord = window.localStorage.getItem('searchRecord'); if(getSearchRecord){ div.innerText = getSearchRecord; }else{ } //2.0 提交按钮点击事件 submit.onclick = function(){ //获取输入的值 var keyword = search.value; //把值插入页面的div里 div.innerText = keyword; //把值保存一份到localStorage window.localStorage.setItem("searchRecord",keyword); } </script>
代码的步骤3.0和2.0可以调换,按照程序执行顺序先3.0再2.0比较合理;
但是敲代码的思路是从2.0到3.0的,望周知;
web 本地存储 (localStorage、sessionStorage)
区别:
对浏览器来说,使用 Web Storage 存储键值对比存储 Cookie 方式更直观,而且容量更大,它包含两种:localStorage 和 sessionStorage
sessionStorage(临时存储) :为每一个数据源维持一个存储区域,在浏览器打开期间存在,包括页面重新加载
localStorage(长期存储) :与 sessionStorage 一样,但是浏览器关闭后,数据依然会一直存在
Api:
sessionStorage 和 localStorage 的用法基本一致,引用类型的值要转换成JSON