JS 获取指定日期的后一天

栏目: JavaScript · 发布时间: 6年前

内容简介:有时候我们在跑数据时可能会遇到将指定日期变为后一天的日期。应用场景如下:今天是4月23日17:00,我想获取所有4月22日到23日两天的复联4新增预售票房信息,所以理论上我们应该统计4月22日00:00——4月24日00:00的数据,但是用户有可能下意识的就会选择22、23。有人也许会说,加个提示不就行了何必这么麻烦?在日期选择里有时候产品会要求当前日期之后的日子不可选(略杠精)那么这种情况下,上述需求就需要咱们处理了,存在即合理hhh。那么如何实现呢?首先众所周知,在编程时,日期有一个通用的标准就是

背景

有时候我们在跑数据时可能会遇到将指定日期变为后一天的日期。应用场景如下:今天是4月23日17:00,我想获取所有4月22日到23日两天的复联4新增预售票房信息,所以理论上我们应该统计4月22日00:00——4月24日00:00的数据,但是用户有可能下意识的就会选择22、23。

有人也许会说,加个提示不就行了何必这么麻烦?在日期选择里有时候产品会要求当前日期之后的日子不可选(略杠精)那么这种情况下,上述需求就需要咱们处理了,存在即合理hhh。那么如何实现呢?

首先众所周知,在编程时,日期有一个通用的标准就是 时间戳(timestamp) ,时间戳是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总秒数/总毫秒数(但毫秒数更为常见,也更加精确)。

思路

思路其实很简单,就是获取当前时间戳A,计算一天的毫秒数B,即可得后一天的时间戳C=A+B,随后通过C获取年月日即可。

代码

在项目里用TS写的,不用太纠结于变量的类型声明,其他都差不多

dateFormat(d: Date, str: string, isEndDate: boolean) {
        let mon = d.getMonth() + 1;
        let day = d.getDate();//设置默认的月份和天数
        if (isEndDate) {
            //当输入为结束日期时,执行如下代码
            d.setTime(date.getTime() + 3600 * 24 * 1000);
            day = d.getDate();
            mon = d.getMonth() + 1;
        }
        let monthString = mon.toString();
        if (mon < 10) {
            //当月份小于10时,显示月份的时候在前面加一个0
            monthString = '0' + monthString;
        }
        let dayString = day.toString();
        if (day < 10) {
            //当天数小于10时,显示天数的时候在前面加一个0
            dayString = '0' + dayString;
        }
        //根据传进的str来返回指定的时间格式,str可以为任意格式的字符串
        return [d.getFullYear(), monthString, dayString].join(str);
      }
      this.dateFormat(new Date(), '-', true);
      //当前时间为2019年4月23日,此时输出为2019-4-24

Done,后期会总结一些关于日期相关计算的思路,可能简单的就不写code了。


以上所述就是小编给大家介绍的《JS 获取指定日期的后一天》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Tensorflow:实战Google深度学习框架

Tensorflow:实战Google深度学习框架

郑泽宇、顾思宇 / 电子工业出版社 / 2017-2-10 / 79

TensorFlow是谷歌2015年开源的主流深度学习框架,目前已在谷歌、优步(Uber)、京东、小米等科技公司广泛应用。《Tensorflow实战》为使用TensorFlow深度学习框架的入门参考书,旨在帮助读者以最快、最有效的方式上手TensorFlow和深度学习。书中省略了深度学习繁琐的数学模型推导,从实际应用问题出发,通过具体的TensorFlow样例程序介绍如何使用深度学习解决这些问题。......一起来看看 《Tensorflow:实战Google深度学习框架》 这本书的介绍吧!

在线进制转换器
在线进制转换器

各进制数互转换器

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换