localStorage 用法及使用注意事项
localStorage 介绍
在HTML5中,为了解决cookie存储空间不足的问题(cookie中每条cookie的存储空间为4k),增加了一个 localStorage,主要是用来作为本地存储的;localStorage 中一般浏览器支持的容量大小是5M,针对不同的浏览器,localStorage容量大小会有所不同。

localStorage 使用
一、 localStorage的浏览器支持情况:

二、localStorage 代码中的使用:

  1. 在项目中,使用localStorage首先需要做的先判断浏览器是否支持;

    if(!window.localStorage){alert("浏览器不支持localstorage");
    }else{//主逻辑业务console.log('Hello world!');
    }
    

    localStorage 设置语法

    if(!window.localStorage){alert("浏览器支持localstorage");
    }else{var storage=window.localStorage;//第一种设置方式:storage["a"]=1;//第二种设置方式:storage.b=1;//第三种设置方式:storage.setItem("c",3);console.log(typeof storage["a"]);  //打印出结果:Stringconsole.log(typeof storage["b"]);  //打印出结果:Stringconsole.log(typeof storage["c"]);  //打印出结果:String
    }
    

    在浏览器中查看结果:

    localStorage 获取

      //第一种方法读取var a=storage.a;console.log(a);//第二种方法读取var b=storage["b"];console.log(b);//第三种方法读取var c=storage.getItem("c");console.log(c);
    

    注意:localStorage的设置和读取方式,官方推荐使用 setItem / getItem;

localStorage 修改

var getVal = localStorage.getItem('myStorage');
if( getVal  != null ){localStorage.setItem('myStorage','setOk');console.log('修改成功');
}else{console.log('未找到myStorage, getVal返回值为 null');
}

localStorage删除

var getVal = localStorage.getItem('myStorage');
if( getVal  != null ){localStorage.removeItem('myStorage');console.log('删除成功');
}else{console.log('未找到myStorage,getVal返回值为 null');
}

localStorage 清除当前域名下所有内容

localStorage.clear();

localStorage中存入 JSON 对象,需先转换成 JSON 字符串,再写入,在读取时再转换成 JSON 对象:(否则会报错)

var storage=window.localStorage;
var data={name:'zhangSan',sex:'1'};//将对象转换为 String ,如果不转,在存入localStorage后,读取出来转换 json对象会报错var setData=JSON.stringify(data); storage.setItem("data",setData);//将JSON字符串转换成为JSON对象输出var jsonString=storage.getItem("data");console.log(typeof jsonString); //打印出 String;var jsonObj=JSON.parse(jsonString);console.log(typeof jsonObj); //打印出 Object;

localStorage 注意事项:

  1. 浏览器的大小不统一,并且在IE8以上的IE版本才支持localStorage这个属性
  2. 目前所有的浏览器中都会把localStorage的值类型限定为string类型,这个在对我们日常比较常见的JSON对象类型需要一些转换
  3. localStorage在浏览器的隐私模式下面是不可读取的
  4. localStorage本质上是对字符串的读取,如果存储内容多的话会消耗内存空间,会导致页面变卡
  5. localStorage不能被爬虫抓取到

【前端】localStorage 用法及使用注意事项相关推荐

  1. C/C assert()函数用法总结与注意事项

    1. 简介 assert宏的原型定义在中,其作用是如果它的条件返回错误,则终止程序执行. 原型定义: #include void assert( int expression );assert的作用是 ...

  2. Web前端页面设计流程及注意事项,谨记!

    每天我们打开电脑,看到各种各样的web前端页面.你知道他们是如何制作的吗?为了让页面更具有规范性,让使用者更加方便,在制作页面过程中必须遵循一定的设计流程.在这里就为大家详细介绍一下制作一个Web前端 ...

  3. 因分辨率变化html页面布局跳动_Web前端页面设计流程及注意事项,谨记!

    每天我们打开电脑,看到各种各样的web前端页面.你知道他们是如何制作的吗?为了让页面更具有规范性,让使用者更加方便,在制作页面过程中必须遵循一定的设计流程.在这里就为大家详细介绍一下制作一个Web前端 ...

  4. 本地存储localStorage用法详解

    一.什么是localStorage? 在HTML5中,新加入了一个localStorage特性,这个特性主要是用来作为本地存储来使用的,解决了cookie存储空间不足的问题(cookie中每条cook ...

  5. 歌谣学前端之React中jsx注意事项

    前言 我是歌谣 我有个兄弟 巅峰的时候排名c站总榜19 叫前端小歌谣 曾经我花了三年的时间创作了他 现在我要用五年的时间超越他 今天又是接近兄弟的一天人生难免坎坷 大不了从头再来 歌谣的意志是永恒的 ...

  6. 前端兼容ie开发的注意事项

    由于工作原因,项目大多需要做到兼容ie9或者8的情况,我也很无奈,所以就记录一些工作中自己遇到,或者带的实习生弟弟们遇到的一些问题 html部分 问题:Ie9仅支持h5的部分标签,以及某些标签的部分属 ...

  7. JAVA中“+”加号用法总结及注意事项

    用法总结: 1.若加号左右两边都是数值型时,做的是加法运算. 2.若加号左右两边有任一方是非数值型时,做的都是拼接运算. 注意事项: 若加号左右两侧为方法名时将各方法结果输出后拼接打印. lo.set ...

  8. 前端localStorage使用

    何为localStorage? 在html5中,新增了localStorage和sessionStorage来实现本地存储,它们统称为web Storage.目的是为了解决cookie存储空间不足的问 ...

  9. java localstorage_本地存储localStorage用法详解

    一.什么是localStorage? 在HTML5中,新加入了一个localStorage特性,这个特性主要是用来作为本地存储来使用的,解决了cookie存储空间不足的问题(cookie中每条cook ...

最新文章

  1. 阿里园区生态技术联盟启动大会
  2. 第十六周程序阅读(4)
  3. 在myeclipse文件中如何创建properties类型的文件,从而连接数据库
  4. 最新综述:从多个角度介绍多模态对话信息搜索(MMCIS)任务
  5. 自动化测试和手工测试
  6. 阿里云文件存储的高性能架构演进之路
  7. 12 个提高JavaScript编码效率的 NPM 技巧
  8. 推荐系统遇上深度学习(七)--NFM模型理论和实践
  9. java泛型概念与通配符含义初探
  10. 第一章 什么是数组名?
  11. 实时音频的混音在视频直播中的技术原理和实践总结
  12. 网络流行简笔画图片大全,互联网图标简笔画
  13. 山石sg6000e1700配置手册_Hillstone SG-6000安装手册.pdf
  14. Python3实现HTTP请求
  15. c语言考研必刷题小程序,小程序推荐:大学生必备刷题小程序,内容涵盖各种证书考试题型...
  16. 提取pdf目录的方法
  17. wegame开dnf正在连接服务器,DNF安装wegame后显示无网络连接状态解决办法
  18. 疫情影响供求再平衡,运用芝商所原油期货对冲风险
  19. 任正非谈任鸿蒙系统,任正非谈鸿蒙系统是怎么回事?任正非谈鸿蒙系统到底谈了什么?...
  20. 数据分析之人力资源管理驾驶舱

热门文章

  1. 经典视频超分论文总结2
  2. 遥感云大数据在灾害、水体与湿地领域典型案例实践及GPT模型
  3. hive报错--The abstract syntax tree is null
  4. 开源免费代码_01_基于Arduino的ESP-NOW,ESP32发送指令、ESP-01S接收指令,通过ESP-01S继电器实现LED灯开关控制_公羽兴
  5. iOS开发-------基于WKWebView的原生与JavaScript数据交互
  6. Python 的列表方法 append 和 extend 有什么区别?
  7. 一场火锅,看清了马云!
  8. 大数据高级开发工程师——HBase学习笔记(2)
  9. 相对论的解析(简论)
  10. 从库克的“购物车”,看苹果的人工智能战略布局