JavaScript:获取日期差异并将月份转换为年份

时间:2014-01-22 20:14:59

标签: javascript date math

如果以MM / YY格式给出两个日期,我怎么能单独使用函数来获得年份和月份的差异。

示例:03/10& 01/14将是3年零10个月。

非常感谢任何帮助。

2 个答案:

答案 0 :(得分:2)

我强烈建议momentjs在JavaScript中进行日期操作。

var start  = moment("03/10", "MM/YY"),
    finish = moment("01/14", "MM/YY");

var diff     = finish.diff(start),
    duration = moment.duration(diff);

duration.years();  // 3
duration.months(); // 10

享受瞬间。它让你的生活变得如此轻松。

答案 1 :(得分:0)

您可以解析日期并用毫秒计算它,但这是一种更快捷的方法。

var date1 = "03/10".split("/");
var date2 = "01/14".split("/");
var months = date2[0] - date1[0] + 12 * (date2[1] - date1[1]);
var result = Math.round(months / 12) + " years " + (months % 12) + " months";

您可以将前两行的日期字符串与变量交换,并且您应该能够猜出将年份和月份作为数字的位置。