如何计算JavaScript中两个日期之间的天数

时间:2015-08-13 09:44:19

标签: javascript

如何使用JavaScript计算两个日期之间的天数?

  
      
  1. 如何从日期开始只获得“日期”。
  2.   
  3. 如何从日期开始只获得'月'。
  4.   
  5. 如何从日期开始只获得'年'。
  6.   
  7. 如何从'天'计算'年'
  8.   

此类问题的答案如下所示

3 个答案:

答案 0 :(得分:1)

您可以使用Moment.Js获取两个日期之间的差异,如下所示。

var start = moment("2015-13-08");
var end = moment("2015-13-08");
start.diff(end, "days")

获取日,月,年可以使用本机javaScript。

var k = new Date();
k.getDate(); //gets the date
k.getMonth() + 1 ;  //gets the month index (0-11) starting from 0, so u will get 7 
                    //  for August. Added +1 to get the  month index on 1-12  scale
k.getFullYear() ; //gets the full year.

//Year from days
 var years =  days/365 ;  //days is the no of days.

答案 1 :(得分:0)

在给定的文本框中选择您的Fromdate

input name="datepicker" id="textboxid" type="text" readonly="readonly" placeholder="Select your fromdate" onchange="" 

1.您选择存储在一个变量中的日期

var datepick = $("#textboxid").val();

//您的选择日期如2015年6月3日

2.您希望将日期,月份,年份与日期选择器分开,意味着使用以下格式

 var fromdate = from.slice(0, 2);

//喜欢03

 var frommonth = from.slice(3, 5);

//喜欢06

 var fromyear = from.slice(6, 10);

//就像2015年 3.分别从日期开始,我们转到今天的日期计算。

 var dateString = Date.now();

//我们得到的日期类似于dateString = 1439454966423

 var currentTime = new Date(parseInt(dateString));

// currentTime = 2015年8月13日星期四14:06:06 GMT + 0530(印度标准时间){}

4.当前日期存储在一个变量中,如下所示

 var to = currentTime.yyyymmdd();

// 2015年8月13日

5.您希望将今天,每月,每年与今天的日期分开,意味着使用以下格式

 var todate = to.slice(8, 10);

//你好像13

 var tomonth = to.slice(5, 7);

//你好像08

 var toyear = to.slice(0, 4);

//你会像2015年一样

6.oneday计算

 var oneDay = 24 * 60 * 60 * 1000;

7.您从日期(年,月,日)明智地获得差异计算(年,月,日)以进行差异计算意味着使用以下格式

 var firstDate = new Date(fromyear, frommonth, fromdate);

var secondDate = new Date(toyear, tomonth, todate);

8.用于在firstDate和secondDate之间计算天数的脚本。

 var diffDays = Math.round(Math.abs((firstDate.getTime() - secondDate.getTime()) / (oneDay)));

9.我们正在计算一年中的差异。

 var getyear = Math.ceil(diffDays / 365);

10.要返回格式化日期时间值,您可以使用以下方法。

Date.prototype.yyyymmdd = function () { var yyyy =this.getFullYear().toString(); var mm = (this.getMonth() +1).toString(); 

// getMonth() is zero-based var dd =this.getDate().toString(); return yyyy + "-" +(mm[1] ? mm : "0" +mm[0]) + "-" + (dd[1] ? dd : "0" + dd[0]); // padding };

答案 2 :(得分:0)

您可能希望使用moment.js及其subtract method