React Native之计算服务器获取时间戳与当前时间的差值(算出天时分秒)

React.jpeg

购物项目一般有的商品会有限时抢购商品,限时抢购又根据当前时间来算有两个状态:1.预售(当前时间到开售时间之间的状态) 2.在售(当前时间到抢购结束时间之间的状态)。

下面来介绍下之间的换算逻辑:

1.获取当前时间戳
// 获取当前时间戳
const currentTimestamp = new Date().getTime();
2.服务器返回的时间戳
 // 获取某个时间格式的时间戳
        const otherTime = 服务端返回的时间;
        /* eslint-disable */
        const newstr = otherTime(/-/g,'/');
        /* eslint-enable */
        const date = new Date(newstr);
        const otherTimestamp = date.getTime().toString();
3.计算两者差值,获取时间段
//在售(当前时间到抢购结束时间之间的状态)
 if (parseFloat(currentTimestamp) >= parseFloat(otherTimestamp)) {
            date3 = otherTimestamp - currentTimestamp;
            // console.log('在售获得差值:'+ date3);
        }
//预售(当前时间到开售时间之间的状态) 
 else if (parseFloat(currentTimestamp) < parseFloat(otherTimestamp)) {
            date3 = otherTimestamp - currentTimestamp;
            // console.log('预售获得差值:'+ date3);
        }
4.根据获取的时间戳计算出天时分秒
 // 天
 const days = Math.floor(date3 / (24 * 3600 * 1000));
// 时
const leave1 = date3 % (24 * 3600 * 1000);
const hours = Math.floor(leave1 / (3600 * 1000));
// 分
const leave2 = leave1 % (3600 * 1000);
const minutes = Math.floor(leave2 / (60 * 1000));
// 秒
const leave3 = leave2 % (60 * 1000);
const seconds = Math.round(leave3 / 1000);
 // console.log("天:"+days+",时:"+hours+",分:"+minutes+",秒:"+seconds);
到这里就能获取到展示的时间天时分秒了,得到的时间可以给倒计时控件使用。

大家有什么不懂得可以留言,看见第一时间回复。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,076评论 25 708
  • 今天的一块钱还是一块钱 …… 不想去吃饭 就坐在车上听歌 天黑了 吃饭点就过去了 晚餐就这么定了
    火山wj阅读 63评论 0 0
  • 七月的风懒懒的,连云朵都变得热热的,躲在房里吹着空调,捧着西瓜煲剧也许是我这枚宅女的常态。阳光、沙滩、啤酒、挚友暂...
    糖小酱阅读 2,132评论 6 4
  • 要好的闺密今天生日。一个人庆祝。她经历为数不多的爱情,像我一样,前任也欠她一个完美的解释。就这样,今年的生日她一个...
    女王大人开心阅读 226评论 0 0
  • OTA升级就是我们常说的空中升级,有两种类型,分别是:Increment OTA(增量/差分)和Full OTA(...
    陇佑少年阅读 1,003评论 0 0