JS关于时间获取的几个小方法

前后端数据交互时,时间通常作为重要的查询条件进行使用,以下总结了几个js关于时间使用的小方法:

1.输入年月获取输入的月份有多少天

function mGetDate(year, month){
    var d = new Date(year, month, 0);
    return d.getDate();
}


2.获取输入的年份有多少天

function getDay(year){ 
    //闰年
    if(((year%4==0)&&(year%100!=0))||(year%400==0))  
    	return 366;
    else 
    	return 365; 
}

3.使用DateTimePicker控件时,如果只初始化了控件的年月日,而没有初始化具体时间,如:2017-12-08(如下图),


此时input里面的默认时间为 2017-12-08 08:00:00 而不是2017-12-08 00:00:00,如果此时想要通过js获取这个日期的零点,可以使用以下方式(假设$('#daycalendarBox').val()为控件选择时间后input中的值):

stime = Date.parse(new Date($('#daycalendarBox').val()+" "+"00:00:00"));
stime为最终获得的时间戳,以上方法只是简单的通过字符串拼接来获取时间,比较常用。


4.获取当前时间的后一天并展示

需要获取当前时间的年月日并通过固定格式展示,方法如下:

var tmr = Date.parse(new Date())+24*60*60*1000;
    		var dt = new Date(tmr);
    		var m = dt.getMonth() + 1;
    		var t = dt.getFullYear() + "-" + m + "-"
    	     + dt.getDate();
    	     $('#endDateBox').val(t);
和上面的方法大同小异,都是通过时间戳进行时间计算,然后分别获取时间对象的具体年月日,在生成固定格式显示。如果获取前一天的时间不通过时间戳进行计算,而是直接通过 对象.getDate()+1这种方法获取的话,在每月最后一天,这个获取的时间会变成原本没有的日期(如:本月最后一天为31号,那么用这种方式获取的日期为32)。




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值