• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com专业计算机教程网站
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure
您的位置:首页 > 网页设计 >HBuilder教程 > 封装localStorage与plus.storage 2.0版本

封装localStorage与plus.storage 2.0版本

作者:教程 字体:[增加 减小] 来源:互联网 时间:2017-05-31

本文主要包含localstorage封装,localstorage,localstorage存储,localstorage.setitem,localstorage.getitem等相关知识,教程希望在学习及工作中可以帮助到您
"); </div> 在使用plus.storage频繁地存取数据时,可以感觉到明显的卡顿,而且很耗内存,
在切换到localstorage时虽然效率很高,页面渲染速度明显变快了,且手机发热不明显,不过又遇到了存储瓶颈(一般<=5M),
因此折中采取了plus.storage与localStorage混合的方案:
当localStorage达到存储瓶颈时切换到plus.storage

  1. (function(com, mui) { 
  2.                 var myStorage = {}; 
  3.                 var first=null; 
  4.                 function getItem(key) { 
  5.                     var jsonStr = window.localStorage.getItem(key.toString()); 
  6.                     return jsonStr ? JSON.parse(jsonStr).data : null; 
  7.                 }; 
  8.  
  9.                 function getItemPlus(key) { 
  10.                     var jsonStr = plus.storage.getItem(key.toString()); 
  11.                     console.log(new Date().getTime()-first); 
  12.                     return jsonStr ? JSON.parse(jsonStr).data : null; 
  13.                 }; 
  14.                 myStorage.getItem = function(key) { 
  15.                     first=new Date().getTime(); 
  16.                     return getItem(key) || getItemPlus(key); 
  17.                 }; 
  18.                 myStorage.setItem = function(key, value) { 
  19.                     first=new Date().getTime(); 
  20.                     value = JSON.stringify({ 
  21.                         data: value 
  22.                     }); 
  23.                     key=key.toString(); 
  24.                     try { 
  25.                          window.localStorage.setItem(key, value); 
  26.                     } catch (e) { 
  27.                         console.log(e); 
  28.                         //TODO 超出localstorage容量限制则存到plus.storage中 
  29.                         //且删除localStorage重复的数据www.bcty365.com
  30.                         removeItem(key); 
  31.                         plus.storage.setItem(key, value); 
  32.                     } 
  33.                     console.log(new Date().getTime()-first); 
  34.                 }; 
  35.  
  36.                 function getLength() { 
  37.                     return window.localStorage.length; 

您可能想查找下面的文章:

  • 封装localStorage与plus.storage 2.0版本

相关文章

  • 2017-05-31mui实现底部凸起按钮的实现
  • 2017-05-31hbuilder快捷键大全_HBuilder代码块
  • 2017-05-31HBuilder mui怎么获取(父窗口)主窗口的对象
  • 2017-05-31HBuilder MUI 手动检测mui版本版本更新的代码
  • 2017-05-31hbuilder图片上传服务器端代码怎么写?( h5+)
  • 2017-05-31mui框架中input输入框或输入框聚焦后页面自动上移实现方法
  • 2017-05-31MUI 判断子页面是否加载完成在显示父页面
  • 2017-05-31Hbuilder MUI 解决MUI轮播组件在隐藏时初始化异常的问题
  • 2017-05-31plus.webview.currentWebview() 如何获取当前窗口ID
  • 2017-05-31HBuilder mui框架开发的App如何查询App的uid

文章分类

  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure

最近更新的内容

    • hbuilder mui 页面的a连接跳转不能使用?
    • MUI 样式按钮的禁用
    • hbuilder mui IOS 平台离线打包定位插件配置
    • Hbuilder MUI 自定义事件绑定取消
    • Native.js获取安卓设备device.uuid-Android平台
    • Native.js调用其它Activity后通过startActivityForResult获取返回结果-Android平台
    • Hbuilder连接第3方模拟器(夜神)
    • 采用了BeeCloud作为支付解决方案还需要配置plus.payment吗?
    • Hbuilder MUI 注册短信验证60秒后重新发送
    • MUI框架预加载

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有