zoukankan      html  css  js  c++  java
  • js:合同-已知起始日期、年限,自动计算截止日期

    dateAddYear('2016-01-01', '3') ;//返回:2018-12-31

    浏览器:ie11,ff 46.0.1(成功)360v8.1(急速模式,成功)

    浏览器:360v8.1(兼容模式,失败)

    一。代码:

    //date: 日期字符串yyyy-MM-dd,如:2016-02-14
    //years:年份,正整数字符串
    //返回日期字符串yyyy-MM-dd,如:2016-02-14
    function dateAddYear(date, years) {
    var now = new Date(date);
    var intYear = now.getFullYear() + parseInt(years);
    var intMonth = now.getMonth() + 1; //正常的月份,
    var intDay = now.getDate() - 1; //日期-1
    if (intDay == 0) {
    intMonth--; //减少一个月
    if (intMonth == 0) {
    intYear--; //0:减少一年
    intMonth = 12;
    intDay = 31;
    }
    else if (intMonth == 4 || intMonth == 6 || intMonth == 9 || intMonth == 11) {
    intDay = 30; //4,6,9,11:30天
    }
    else if (intMonth == 2) {
    intDay = 28; //2:28/29
    if (intYear % 4 == 0) {
    intDay = 29;
    }
    } else {
    intDay = 31; //1,3,5,7,8,10,12 :31天
    }
    }

    var strMonth = (intMonth) < 10 ? "0" + (intMonth).toString() : (intMonth).toString();
    var strDay = (intDay) < 10 ? "0" + (intDay).toString() : (intDay).toString();
    var strEndDate = intYear + "-" + strMonth + "-" + strDay;
    return strEndDate;
    }

    二。相关方法、函数说明
    // var myDate = new Date();
    // myDate.getYear(); //获取当前年份(2位)
    // myDate.getFullYear(); //获取完整的年份(4位,1970-????)
    // myDate.getMonth(); //获取当前月份(0-11,0代表1月)
    // myDate.getDate(); //获取当前日(1-31)
    // myDate.getDay(); //获取当前星期X(0-6,0代表星期天)
    // myDate.getTime(); //获取当前时间(从1970.1.1开始的毫秒数)
    // myDate.getHours(); //获取当前小时数(0-23)
    // myDate.getMinutes(); //获取当前分钟数(0-59)
    // myDate.getSeconds(); //获取当前秒数(0-59)
    // myDate.getMilliseconds(); //获取当前毫秒数(0-999),目前是13位整数
    // myDate.toLocaleDateString(); //获取当前日期,如:2016年6月17日
    // myDate.toLocaleTimeString(); //获取当前时间,如:11:41:24
    // myDate.toLocaleString(); //获取当前日期时间,如:2016年6月17日 11:41:24

  • 相关阅读:
    最常用的CountDownLatch, CyclicBarrier你知道多少? (Java工程师必会)
    浅谈Java中的Condition条件队列,手摸手带你实现一个阻塞队列!
    实习到公司倒闭,2019我的技术踩坑之路!
    Java中的等待唤醒机制—至少50%的工程师还没掌握!
    告别编码5分钟,命名2小时!史上最全的Java命名规范参考!
    解决SELinux阻止Nginx访问服务
    ZooKeeper使用入门
    JVM致命错误日志详解
    虚拟机中设置 CentOS 静态 IP
    Spring 核心技术(7)
  • 原文地址:https://www.cnblogs.com/flovey/p/5594410.html
Copyright © 2011-2022 走看看