`
sohighthesky
  • 浏览: 36030 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

js获取离生日的天数,和年数

 
阅读更多
不计算小时:
/*
 *reg生日
 *tod当前日期,从服务器获取
 *cd提前提醒的天数范围
 */
function getBirthday(reg,tod,cd){
    var d=new Date(reg),n=new Date(tod),y=n.getFullYear(),
    yd=new Date(y,n.getMonth(),n.getDate()),
    ds=(new Date(y,d.getMonth(),d.getDate())-yd)/(1000*60*60*24),//月日份相差天数
    ys=n.getFullYear()-d.getFullYear();//相差年数
    if(ds < -200){//修正类似1月1号提前5天的提醒,
        ds=(new Date(d.getFullYear()+(++ys),d.getMonth(),d.getDate())-yd)/(1000*60*60*24)
    }
    if(ds > cd)return null;//不在范围内返回null,不提醒
    return [ys,ds]
}
document.write(getBirthday('1/1/2005','12/29/2008',5));
document.write("<br/>");
document.write(getBirthday('12/29/2005','1/2/2008',5));
document.write("<br/>");
document.write(getBirthday('3/4/2005','3/1/2008',5));


版本2:在指定日期绝对值范围内也返回
function getBirthday1(reg,tod,cd){
    var d=new Date(reg),n=new Date(tod),y=n.getFullYear(),
    yd=new Date(y,n.getMonth(),n.getDate()),
    dd=1000*60*60*24,
    ds=(new Date(y,d.getMonth(),d.getDate())-yd)/dd,//月日份相差天数
    ys=n.getFullYear()-d.getFullYear();//相差年数
    if(ds < -200){//修正类似1月1号提醒5天的提醒,
        ds=(new Date(d.getFullYear()+(++ys),d.getMonth(),d.getDate())-yd)/dd
    } else if(ds>200){
        ds=(new Date(d.getFullYear()+ys-1,d.getMonth(),d.getDate())-yd)/dd
    }
    if(Math.abs(ds) > cd)return null;//不在范围内返回null,不提醒
    return [ys,ds]
}
0
1
分享到:
评论

相关推荐

    js获取年月日和当月的天数

    ### JavaScript 获取年月日及当月...通过上述示例,我们可以清楚地了解到如何使用JavaScript来处理日期和时间,特别是在获取当前日期的年、月、日以及计算当月的总天数方面。这对于开发基于日期的应用程序非常有帮助。

    javascript获取当月天数

    ### JavaScript 获取当月天数 #### 知识点解析 在给定的代码示例中,我们可以看到一段 Java 代码,而不是 JavaScript。这段 Java 代码主要用于计算并打印出指定年份和月份的天数。然而,题目要求的是使用 ...

    c#获取当前年的天数

    在C#编程语言中,获取当前年的天数是一项常见的任务,尤其在处理日期和时间相关的逻辑时。这个程序示例提供了获取任何一年天数的方法,不仅限于当前年。我们可以通过利用C#中的DateTime和DateTime.IsLeapYear()方法...

    JS 获得两个时间间隔天数

    在JavaScript中,获取两个日期之间的天数差是一个常见的任务,特别是在处理时间和日期相关的应用程序中。这篇博客“JS获得两个时间间隔天数”提供了一个实用的方法来解决这个问题。在这个方法中,我们将探讨如何利用...

    JS简单获取日期相差天数的方法

    在JavaScript开发中,日期和时间的处理是一个常见的需求,尤其是当我们需要计算两个日期之间的相差天数时。本文将详细介绍一种简单的方法来计算两个日期之间相差的天数,以及JavaScript中处理日期时间的基础知识。 ...

    JS获取月份最后天数、最大天数与某日周数的方法

    在本篇文章中,详细介绍了如何使用JavaScript(简称JS)来实现对日期的操作,主要涵盖了获取月份的最后一天、某月的总天数以及某天是一年中的第几周的方法。以下是对这些知识点的详细解读。 首先,关于获取月份最后...

    javaScript和java中日期相减得出天数方案

    ### JavaScript和Java中日期相减得出天数方案 #### JavaScript中的日期相减方案 在JavaScript中,计算两个日期之间的天数差是一个常见的需求。这里提供了一种方法来实现这一功能。 1. **基本原理**: - 使用`...

    js,javascript得到一个月份的最大天数,巧妙实现

    这是我们公司的框架代码,给分,谢谢!js,javascript得到一个月份的最大天数,巧妙实现js,javascript得到一个月份的最大天数,巧妙实现js,javascript得到一个月份的最大天数,巧妙实现

    js 得到某个月份的天数

    在JavaScript中,获取某个月份的天数是一项常见的任务,特别是在处理日期相关的应用程序时。JavaScript提供了内置的Date对象,通过这个对象我们可以轻松地获取任何月份的天数。下面将详细介绍如何利用JavaScript实现...

    Javascript获取某个月的天数

    在本文中,将介绍如何使用JavaScript编程语言中的Date对象来获取某个月的天数。我们会深入探讨一个名为getDaysInOneMonth(year, month)的自定义方法,该方法接受两个参数:年份和月份,返回该月的天数。此外,文章会...

    根据年月得到当月的天数及日期

    在编程领域,获取特定年月的天数是一项常见的任务,特别是在处理日期相关的应用程序时。这个话题涉及到日期和时间的计算,通常使用编程语言内置的日期时间库来实现。以下是一些关于如何根据年月获取当月天数及日期的...

    计算两个时间之间的年数、月数、天数等

    计算两个时间之间的年数、月数、天数、时、分、秒,计算两个时间之间的年数、月数、天数、时、分、秒

    Js获取当前日期时间及格式化代码

    描述中的知识点:介绍了如何使用JavaScript(Js)获取当前的日期和时间,并提供了一个格式化日期时间的代码示例。 标签中的知识点:涉及到Js在获取日期时间方面相关的几个关键功能和方法,包括获取年份、月份、日、...

    sql server 生日提醒

    - `dateadd("yyyy", DateDiff("yyyy", Birth, {fn NOW()}), Birth)`:基于用户的生日,加上上面计算出的年数,得到今年的生日日期。 - `DateDiff("d", {fn NOW()}, dateadd("yyyy", DateDiff("yyyy", Birth, {fn NOW...

    JS获取指定月份的天数两种实现方法

    在处理JavaScript和Web技术相关问题时,MDN通常提供权威的说明和示例代码,是开发者和技术人员重要的学习和参考资料。对于Date对象的高级特性,MDN通常会提供更详尽的说明和额外的使用场景,如时间差的计算、日期...

    c#获取当前月的天数

    在C#编程语言中,获取当前月份的天数是一项常见的任务,这主要涉及到日期和时间的处理。在本文中,我们将深入探讨如何使用C#来获取任何给定月份的天数,以及如何利用这个功能来编写实用的程序。 首先,我们需要了解...

    VB计算天数

    VB提供了丰富的日期函数,可以帮助我们方便地获取任何月份的天数。在这个"VB计算天数"的示例中,我们将探讨如何通过编程实现这个功能。 首先,我们需要了解VB中的Date和DateTime类型,它们用于存储日期和时间值。VB...

    kettle中使用js计算两个日期之间的天数.txt

    kettle中使用js计算两个日期之间的天数

    Android 获取2个日期相差天数

    在Android开发中,有时我们需要计算两个日期之间的差值,例如计算两个生日之间相差多少天,或者确定一个事件距离现在还有多少天。这个任务可以通过编程实现,本文将详细讲解如何在Android环境中获取两个日期相差的...

Global site tag (gtag.js) - Google Analytics