zoukankan      html  css  js  c++  java
  • 时间对象学习---以创建时间对象,设置跨越限制,获取星期,转化时间对象和字符串为例

    一、创建日期

           常用方法:

      new Date() //当前时间和日期;

      new Date(milliseconds) //返回从1970年1月1日至今的毫秒数;

           new Date(year,month,day,hours,minutes,seconds,milliseconds)

      new Date(dateString)

        dataString可以分为三种:

        英文和数字结合,例如:var d1 = new Date("October 13,1975 11:13:00");

                   斜杠和冒号分割,例如:var d2 = new Date("2017/9/25 21:49:49")  注:这种方式在谷歌和ie浏览器都支持(火狐欧朋为测试);  通过d3.getTime()可以得到1970年1月1日至今的毫秒数;

        横杠和冒号分割,例如:var d3 = new Date("2017-9-25 21:50:02")   注:这种方式谷歌  通过d3.getTime()可以得到1970年1月1日至今的毫秒数;ie8/9无法获取到毫秒数

               可以使用字符串替换转换格式,string_d.replace(/-/g,"/");

    二、设置跨月限制

      var limitTime = function(startTime,endTime,limitMonth){

        var that = this;

        //根据传入的时间格式分解时间字符串

        if(!startTime||!endTime) return "emptyTime";

                   var ytd,hms;

                   if(startTime.split(' ').length>1){

          ytd = startTime.split(' ')[0];

          hms = startTime.split(' ')[1];

        }else{

          ytd = startTime;

        }  

        var arr_time = ytd.split('-'),//此处为时间分割符

          //获取开始时间

          year = arr_time[0],

          month = arr_time[1],

             day = arr_time[2];

          //计算limit限制的结束日期

          var last_year = year,

                last_month = Number(month) + limitMonth;

            if(last_month>=13){

              last_year = Number(last_year)+Math.floor(last_month/12);

              last_month = last_month%12;

            }

            var last_day = day,

               last_month = last_month-1;

                                 //获取结束时间的月的天数

            var _days = new Date(last_year,last_month,0)

            var last_day是= _days.getDate();

            if(last_day>last_days){

             last_day = last_days;

             }

            if(hms){

              hms = hms.replace(/s+/g,"").split(":");

              var lastTime = new Date(Number(last_year),Number(last_month),Number(last_day),Number(hms[0]),Number(hms[1]),Number(hms[2])).getTime();

            }else{

              var lastTime = new Date(Number(last_year),Number(last_month),Number(last_day)).getTime();
            };

           var end_time = new Date(endTime.replace(new RegExp("-","gm"),"/"));

                              if(end_time.getTime()>lastTime){

            return true;

                              }else{

            return false;

            }

           }

  • 相关阅读:
    十三、asp.net中Repeater控件用法笔记
    九、chart控件的使用(图表数据的展示)
    一、在开发数据同步系统中的开发问题:
    ubuntu编译最新版本WebKit
    android apk 防止反编译技术第四篇-对抗JD-GUI
    小菜学Chromium之OpenGL学习之二
    webkit浏览器常见开发问题
    Android图片开发内幕--基础篇
    【转载】Android Metro风格的Launcher开发系列第二篇
    world 替换+正则表达式命令
  • 原文地址:https://www.cnblogs.com/lizhiwei8/p/7594169.html
Copyright © 2011-2022 走看看