zoukankan      html  css  js  c++  java
  • 工作中常用的日期方法总结

    • 时间常用方法
    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)
    myDate.toLocaleDateString(); //获取当前日期
    var mytime=myDate.toLocaleTimeString(); //获取当前时间
    myDate.toLocaleString( ); //获取日期与时间
    • 初始化日期为当前日期的下一个月
    function getNextMonth(){
        var date=new Date();
        var y=date.getFullYear();
        var m=date.getMonth()+1;
        var _date;
        m=m+1;
        if(m<10){
            m="0"+m;
            _date=y+"-"+m;
        }else if(m>9&&m<=12){
            _date=y+"-"+m;
        }else if(m>12){
            y=y+1;
            _date=y+"-"+"01";
        }
        return _date;
    }
    • 设置日期为某一天
    function GetDateStr(AddDayCount) {
        var dd = new Date();
        dd.setDate(dd.getDate()+AddDayCount);//获取AddDayCount天后的日期
        var y = dd.getFullYear();
        var m = dd.getMonth()+1;//获取当前月份的日期
        var d = dd.getDate();
        if(m<10){
            m="0"+m;
        }
        if(d<10){
            d="0"+d;
        }
        return y+"-"+m+"-"+d;
    }
    //获取当天
    GetDateStr(0);
    //获取前天
    GetDateStr(-1);
    //后天
    GetDateStr(1);
    • 获取两个日期差 
    function getDays(strDateStart,strDateEnd){
       var strSeparator = "-";
       var oDate1;
       var oDate2;
       var iDays;
       oDate1= strDateStart.split(strSeparator);
       oDate2= strDateEnd.split(strSeparator);
       var strDateS = new Date(oDate1[0], oDate1[1]-1, oDate1[2]);
       var strDateE = new Date(oDate2[0], oDate2[1]-1, oDate2[2]);
       iDays = parseInt(Math.abs(strDateS - strDateE ) / 1000 / 60 / 60 /24)  //把相差的毫秒数转换为天数 
       return iDays ;
    }
    • 根据年月计算天数
    function getDayCount(year,month){
        month = parseInt(month,10); //parseInt(number,type)这个函数后面如果不跟第2个参数来表示进制的话,默认是10进制。 
        var temp = new Date(year,month,0); 
        return temp.getDate(); 
    }
    • 计算时间差
    function datediff(strInterval,dtStart,dtEnd) {   
         if (typeof dtStart=='string'){dtStart = StringToDate(dtStart);}
         if (typeof dtEnd=='string'){dtEnd = StringToDate(dtEnd);}
         switch (strInterval) {   
             case 's' :return parseInt((dtEnd - dtStart) / 1000);  
             case 'n' :return parseInt((dtEnd - dtStart) / 60000);  
             case 'h' :return parseInt((dtEnd - dtStart) / 3600000);  
             case 'd' :return parseInt((dtEnd - dtStart) / 86400000);  
             case 'w' :return parseInt((dtEnd - dtStart) / (86400000 * 7));  
             case 'm' :return (dtEnd.getMonth()+1)+((dtEnd.getFullYear()-dtStart.getFullYear())*12) - (dtStart.getMonth()+1);  
             case 'y' :return dtEnd.getFullYear() - dtStart.getFullYear();  
         }  
     } 
      
      //用法

    var endTime = new Date();
    var seconds = datediff("s",startTime,endTime);
    var minutes = 0;
    var hours = 0;
    if(seconds>60){
    minutes = parseInt(seconds/60);
    seconds = seconds%60;
    if(minutes>60){
    hours = parseInt(minutes/60);
    minutes = minutes%60;
    }
    }

    $("#useTime").html(hours+"时"+minutes+"分"+seconds+"秒");

    • 日期格式化方法
    Date.prototype.format = function(format){ 
        var o = {  
            "M+" : this.getMonth() + 1,  
            "d+" : this.getDate(),  
            "h+" : this.getHours(),  
            "m+" : this.getMinutes(),  
            "s+" : this.getSeconds(),  
            "q+" : Math.floor((this.getMonth() + 3) / 3),  
            "S" : this.getMilliseconds()  
        }    
        if (/(y+)/.test(format))  
        {  
            format = format.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));  
        }    
        for (var k in o)  
        {  
            if (new RegExp("(" + k + ")").test(format))  
            {  
                format = format.replace(RegExp.$1, RegExp.$1.length == 1? o[k]: ("00" + o[k]).substr(("" + o[k]).length));  
            }  
        }  
        return format;  
     } 
    
      //调用
        var startTime="2015-02-03";
        new Date(startTime)).format('yyyy-MM-dd hh:mm')
    • 取时间到分钟
    new Date(_onlineTime.replace(/-/g,"/")).format('yyyy-MM-dd hh:mm');
  • 相关阅读:
    第十章:Android消息机制
    第九章:四大组件的工作过程
    第八章:理解Window和WindowManager
    第七章:Android动画深入分析
    第六章:Android的Drawable
    第五章:理解RemoteViews
    第四章:View的工作原理
    第三章:View的事件体系
    chr()返回值是当前整数对应的 ASCII 字符。
    遍历从左到右,打印子串在字符串中出现的次数
  • 原文地址:https://www.cnblogs.com/fangdx/p/5406026.html
Copyright © 2011-2022 走看看