javascript - 获取月份差异并列出 JavaScript 中两个日期之间的数组中的月份

标签 javascript date

下面给出了两个日期,其格式是我需要获取它们之间的月数。我尝试过 Difference in months between dates in Javascript : 但格式与我的格式不匹配。有人可以建议修复吗?

 startDate:"2015-09-07",
 endDate: "2015-12-30"

我还需要显示日期之间的月份,例如:

var months=["sept","oct","nov","dec","jan","feb"]

最佳答案

嗯,你总是可以分割字符串并使用月份,如下所示:

var startDate = startDate.split("-");
var endDate= endDate.split("-");
var MonthDifference = endDate[1] - startDate[1];

例如,您可以执行此功能:

function DifferenceInMonths(startDate, endDate){
    startDate= startDate.split("-");
    endDate= endDate.split("-");
    return endDate[1] - startDate[1];
}

但是我们面临着这些日期可能发生在不同年份的问题。如果您尝试这样做会怎样:

function differenceCalculatedInMonthsByUnix(startDate, endDate){
startDate = new Date(startDate).getTime();
endDate= new Date(endDate).getTime();
var difference = endDate - startDate;
return timeMe(difference);
}

function timeMe(unix_timestamp){
    unix_timestamp = parseInt(unix_timestamp);
    var date = new Date(unix_timestamp);
    var days = date.getDate();
    var month = date.getMonth() + 1;
    var year = date.getFullYear()
    // hours part from the timestamp
    var hours = date.getHours();
    // minutes part from the timestamp
    var minutes = "0" + date.getMinutes();
    // seconds part from the timestamp
    var seconds = "0" + date.getSeconds();
    // will display time in 10:30:23 format
    var formattedTime = days + '.' + month + '.' + year + ' at:' + hours + ':' + minutes.substr(minutes.length-2) + ':' + seconds.substr(seconds.length-2);
    return (12 * year) + month
}

不确定 TimeMe() 是我自己做的还是从 stackOverflow 找到的,所以如果有人需要积分,请pm我。 但是,是的,其中的想法是,我们将日期转换为 unix 时间戳,计算差异,然后将其转换为月份。

关于javascript - 获取月份差异并列出 JavaScript 中两个日期之间的数组中的月份,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32741215/

相关文章:

java - 无法将 java.lang.String 类型的属性值转换为所需的 java.util.Date 类型

node.js - 将 yyyymmddThhmmss.SSSZ 格式转换为 Unix Timestmp

javascript - 发送 json 对象或使用快速路由渲染 View

javascript - 利用时刻舍入到下一个或第三个星期一

javascript - laravel 在一个页面中实现两个脚本

javascript - 弹出框在第一次点击时不显示,但在第二次点击时显示

c++ - 日期类型精度对性能的影响

php - 从 MySQL 数据库获取日期时间字段值

javascript - 可以从另一个选项卡刷新浏览器页面

javascript - 如何启用文件选择按钮?