详解微信小程序缓存--缓存时效性

 更新时间:2019年05月02日 11:08:54   作者:江木  
这篇文章主要介绍了微信小程序缓存时效性,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

关于本地缓存

1.wx.setStorage(wx.setStorageSync)、wx.getStorage(wx.getStorageSync)、wx.clearStorage(wx.clearStorageSync)可以对本地缓存进行设置、获取和清理。本地缓存最大为10MB

2.localStorage 是永久存储

相应的api----------

wx.setStorage(OBJECT)

wx.getStorage(OBJECT)

wx.getStorageInfo(OBJECT)

wx.removeStorage(OBJECT)

wx.setStorageSync(KEY,DATA)

wx.getStorageSync(KEY)

wx.getStorageInfoSync

wx.clearStorage()

wx.clearStorageSync() ...

Api的具体使用详见官方文档

注意:这里又一个问题就是这些缓存不清理会永久的缓存----------然而实际开发中,我们往往需要设置一些缓存的时效性

所以就需要对这些api进行封装(二次开发)直接上代码

设置缓存-----------put(key, val, time)        time为可选参数表示有效时间(单位:秒)

function put(key, val, time) {

wx.setStorageSync(key, val)

var seconds = parseInt(time);

if (seconds > 0) {

var timestamp = Date.parse(new Date());

timestamp = timestamp / 1000 + seconds;

wx.setStorageSync(k + 'dtime', timestamp + "")

} else {

wx.removeStorageSync(k + 'dtime')

}

}

读取缓存-----get(key, def)-------def为可选参数,表示无缓存数据时返回值(支持字符串、json、数组、boolean等等)

function get(key, def) {

var deadtime = parseInt(wx.getStorageSync(key+ 'dtime'))

if (deadtime) {

if (parseInt(deadtime) < Date.parse(new Date()) /1000) {

if (def) { return def; }else { return; }

}

}

var res = wx.getStorageSync(key);

if (res) {

return res;

} else {

return def;

}

}

以上所述是小编给大家介绍的微信小程序缓存时效性详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

相关文章

  • ES6学习教程之块级作用域详解

    ES6学习教程之块级作用域详解

    很多语言中都有块级作用域,但JS没有,它使用var声明变量,以function来划分作用域,大括号“{}” 却限定不了var的作用域,下面这篇文章主要给大家介绍了关于ES6学习教程之块级作用域的相关资料,需要的朋友可以参考下。
    2017-10-10
  • 浅谈js中的三种继承方式及其优缺点

    浅谈js中的三种继承方式及其优缺点

    下面小编就为大家带来一篇浅谈js中的三种继承方式及其优缺点。小编觉得挺不错的,现在就分享给大家,也给大家做个参考,一起跟随小编过来看看吧
    2016-08-08
  • spirngmvc js传递复杂json参数到controller的实例

    spirngmvc js传递复杂json参数到controller的实例

    下面小编就为大家分享一篇spirngmvc js传递复杂json参数到controller的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-03-03
  • echarts实现中国地图下钻进入下一级(地图钻取)

    echarts实现中国地图下钻进入下一级(地图钻取)

    最近在学习echarts,今天就来介绍一下echarts实现中国地图下钻进入下一级,具有一定的参考价值,感兴趣的可以了解一下
    2023-08-08
  • javascript中call,apply,bind的区别详解

    javascript中call,apply,bind的区别详解

    这篇文章主要介绍了javascript中call,apply,bind的区别详解,帮助大家更好的理解和使用JavaScript,感兴趣的朋友可以了解下
    2020-12-12
  • 使用js 设置url参数

    使用js 设置url参数

    本篇文章是对使用js设置url参数的实现代码进行了详细的分析介绍,需要的朋友参考下
    2013-07-07
  • 在JS中a标签加入单击事件屏蔽href跳转页面

    在JS中a标签加入单击事件屏蔽href跳转页面

    这篇文章主要介绍了JS中a标签加入单击事件屏蔽href跳转页面的相关资料,需要的朋友可以参考下
    2016-12-12
  • js窗口震动小程序分享

    js窗口震动小程序分享

    这篇文章主要为大家分享了js窗口震动小程序,可设置抖动的频率,范围,和次数,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-11-11
  • Javascript异步编程async实现过程详解

    Javascript异步编程async实现过程详解

    这篇文章主要介绍了Javascript异步编程async实现过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-04-04
  • 基于jquery实现的省市区级联无ajax

    基于jquery实现的省市区级联无ajax

    省市区级联的实现方法有很多,在本文为大家介绍下如何使用jquery无ajax来实现,感兴趣的朋友可以参考下,希望对大家有所帮助
    2013-09-09

最新评论