localStorage用法小总结

记得前端大神winter说过:要建立起自己的知识体系,第一步:寻找线索(找准确、全面的);第二步,建立联系;第三步,是分类(用思维导图),第四步,是追本溯源(找到最初的那个它~)

今天,怀着崇拜大神的心情,来学习下 localStorage的基本用法。用到的学习机是chrome浏览器,毕竟大厂权威性还是可以的。

我首先在开发者工具的 Console 中,输入了

localStorage.

然后就弹出了一些列宿主(浏览器)提供的localStorage自带的方法,摘录了一些常用的API如下表所示:

清空localStorage

localStorage.clear()    // undefined    
localStorage            // Storage {length: 0}
localStorage.setItem("name","caibin") //存储名字为name值为caibin的变量
localStorage.name = "caibin"; // 等价于上面的命令
localStorage // Storage {name: "caibin", length: 1}
localStorage.getItem("name") //caibin,读取保存在localStorage对象里名为name的变量的值
localStorage.name // "caibin"
localStorage.valueOf() //读取存储在localStorage上的所有数据
localStorage.key(0) // 读取第一条数据的变量名(键值)
//遍历并输出localStorage里存储的名字和值
for(var i=0; i<localStorage.length;i++){
    console.log('localStorage里存储的第'+i+'条数据的名字为:'+localStorage.key(i)+',值为:'+localStorage.getItem(localStorage.key(i)));

删除某个变量

localStorage.removeItem("name"); //undefined
localStorage // Storage {length: 0} 可以看到之前保存的name变量已经从localStorage里删除了

检查localStorage里是否保存某个变量

// 这些数据都是测试的,是在我当下环境里的,只是demo哦~
localStorage.hasOwnProperty('name') // true
localStorage.hasOwnProperty('sex')  // false

将数组转为本地字符串

var arr = ['aa','bb','cc']; // ["aa","bb","cc"]
localStorage.arr = arr //["aa","bb","cc"]
localStorage.arr.toLocaleString(); // "aa,bb,cc"

将JSON存储到localStorage里

var students = {
    xiaomin: {
        name: "xiaoming",
        grade: 1
    teemo: {
        name: "teemo",
        grade: 3
students = JSON.stringify(students);  //将JSON转为字符串存到变量里
console.log(students);
localStorage.setItem("students",students);//将变量存到localStorage里