对localStorage进行封装:

  1. var LocalStorageUtils = new function (){
  2. if(window.localStorage==null){
  3. throw new Error('当前浏览器不支持本地存储!');
  4. };
  5. var _storage = window.localStorage;
  6. /**
  7. * 设置(添加,修改)本地存储项
  8. * @param {*} key
  9. * @param {*} value
  10. */
  11. this.set=function(key,value){
  12. //storage[key]=value;
  13. _storage.setItem(key,value);
  14. },
  15. /**
  16. * 获取本地存储项
  17. * @param {*} key
  18. */
  19. this.get=function(key){
  20. //return storage[key];
  21. return _storage.getItem(key);
  22. },
  23. /**
  24. * 移除本地存储项
  25. * @param {*} key
  26. */
  27. this.remove=function(key){
  28. //delete storage[key];
  29. _storage.removeItem(key);
  30. },
  31. /**
  32. * 清空本地存储项
  33. */
  34. this.clear= function(){
  35. _storage.clear();
  36. },
  37. /**
  38. * 获取本地存储项所有的key
  39. */
  40. this.keys=function(){
  41. var allKeys = [];
  42. for(var i=0;i<_storage.length;i++){
  43. allKeys.push(_storage.key(i));
  44. }
  45. return allKeys;
  46. },
  47. /**
  48. * 获取本地存储项条数
  49. */
  50. this.length = function(){
  51. return _storage.length;
  52. },
  53. /**
  54. * 设置(添加,修改)本地JSONObj存储项
  55. * @param {*} key
  56. * @param {*} value
  57. */
  58. this.setJSONObj=function(key,value){
  59. this.set(key,JSON.stringify(value));
  60. },
  61. /**
  62. * 获取本地JSONObj存储项
  63. * @param {*} key
  64. */
  65. this.getJSONObj= function(key){
  66. return JSON.parse(this.get(key));
  67. }
  68. }();

LocalStorageUtils的更多相关文章

随机推荐

  1. bad ELF interpreter: No such file or directory

    1.在64系统里执行32位程序如果出现/lib/ld-linux.so.2: bad ELF interpreter: No such file or directory,安装下glic即可 yum ...

  2. Gradle 教程: 教你配置全局国内仓库,解决新建项目卡顿,下载构建慢等问题

    想必各位从Maven 转过来的大佬们,对于maven中配置国内仓库的方法还记忆深刻.通过/用户目录下/.m2/settings.xml 局部配置或者修改全局配置.不过没有接触过maven 也不要紧,可 ...

  3. 微信小程序 获取地理位置信息

    app.json "permission":{ "scope.userLocation": { "desc": "你的位置信息将用 ...

  4. sys/cdefs.h No such file or directory

    安装如下软件: sudo apt-get libc6-dev-i386

  5. phpmyadmin上在某数据库里创建函数

    改那个PHP项目加了个功能,本地MYSQL里添加了一个函数了,现在要转到服务器上,然后服务器上的MYSQL只能通过PHPMYADMIN网页操作的,在网页上SQL里输入创建函数的语句, 结果报错了:th ...

  6. vue aes

    npm install crypto-js import CryptoJS from "crypto-js/crypto-js"; const KEY = CryptoJS.enc ...

  7. Session覆盖测试(要验证码提交到后续页面操作的 绕过去的场景)

    测试原理和方法 找回密码逻辑漏洞测试中也会遇到参数不可控的情况,比如要修改的用户名或者绑定 的手机号无法在提交参数时修改,服务端通过读取当前session会话来判断要修改密码的账 号,这种情况下能否对 ...

  8. docker 国内镜像加速

    CentOS7 对于使用 systemd 的系统,请在 /etc/docker/daemon.json 中写入如下内容(如果文件不存在请新建该文件): {"registry-mirrors& ...

  9. Javascript判斷function是否定義

    jQuery可以用 isFunction() 來進行判斷 如果僅使用Javascript可以使用以下的方法 function isFunction(fn){ return typeof fn === ...

  10. adb 命令简介

    adb命令配置 1 在命令行下,进入用户目录 cd $HOME 2 .bash_profile文件 输入下行命令获取当前文件列表: ls -al 查看文件列表,如果没有.bash_profile文件, ...