为了账号安全,请及时绑定邮箱和手机立即绑定

小程序使用 storage 来记录时间及判断触发机制

标签:
JavaScript

最近做一个用来做题的小程序,连续作对 5 题就会触发一个方法,其中有一个条件判断比较有意思的,一般不会想到,于是就记录下来。

首先小程序要求是每一天只会触发一次,触发过一次后就要等第二天才能触发,然后就是连续做对五次才会触发了。

一天一次,这样记录

程序名字:设定时间
last_excellent_time = new Date();
wx.setStorageSync('last_excellent_time', last_excellent_time.getDate());

重要的是怎么判断,如下

程序名字:判断主体
var today = new Date();
if(!last_excellent_time || last_excellent_time != today.getDate() ) {
  程序体
}
解读一下,当 last_excellent_time 不存在 或是 “上次所存的时间” 不等于 “今天的几号”,就不能进入程序体

我们一般先执行一次从 storage 中获取 last_excellent_time,当获取不到时,storage 就会返回 null,程序“判断主体”就可以进入程序体了,当进入程序体你可以设立一个 last_excellent_time ,如程序“设定时间”,这样第二次执行程序“判断主体”,第一个条件就不会通过,自如要判断 storage 的时间是否和 today 是相同了,如果相同就肯定不会触发进入程序体了。

不知道同学们都能否看明白我所要表达的意思,但是这并不仅仅是小程序,就是一个程序的想法,一句话总结就是如何判断一天只会在做对五次题目的情况下触发方法。

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消