首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在jQuery中获取两个日期之间的年份

在jQuery中获取两个日期之间的年份
EN

Stack Overflow用户
提问于 2015-06-01 08:16:06
回答 4查看 8K关注 0票数 1

我需要在jQuery的两次约会之间花几年时间

例如,如果我有这两个日期("2014-5-1“,"2017-4-6"),我需要像这样把这两天(2014,2015,2016,2017)相隔几年。

所以有人能帮我一下吗?

提前感谢

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2015-06-01 08:20:14

像这样的东西会返回一个年复一年的数组

代码语言:javascript
复制
function getYears(from, to) {
    var d1 = new Date(from),
        d2 = new Date(to),
        yr = [];

    for (var i=d1.getFullYear(); i<=d2.getFullYear(); i++) {
        yr.push( i );
    }

    return yr;
}

小提琴

票数 3
EN

Stack Overflow用户

发布于 2015-06-01 08:21:38

不需要jQuery。

代码语言:javascript
复制
var y1 = new Date("2014-5-1").getFullYear();
var y2 = new Date("2017-4-6").getFullYear();

var years = [];
if(y1 < y2){
  for(var i = y1; i <= y2; i++){
    years.push(i);
    }
  }
else{
  for(var i = y2; i <= y1; i++){
    years.push(i);
    }
  }
console.log(years);

票数 2
EN

Stack Overflow用户

发布于 2015-06-01 08:31:15

如果您正确格式化您的日期,则可以使用JavaScript Date对象来完成。

代码语言:javascript
复制
function calculateYears(date1, date2){
    date1 = new Date(date1);
    date2 = new Date(date2);
    var period = date2.getFullYear() - date1.getFullYear();
    if (date2.getMonth() < date1.getMonth() - 1){
        period--;
    }
    if (date1.getMonth() - 1 == date2.getMonth() && date2.getDate() < date1.getDate()){
        period--;
    };
  return period;
};
console.log(calculateYears("2014-05-01" , "2017-04-06"));
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30568668

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档