无名

长风破浪会有时,直挂云帆济沧海!

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
Javascript日期函数      
  Date(日期)对象可以使用Date()构造器来创建,在前面的教程中我们已经介绍了Date()构造器,这里就不重复叙述。它没有参数,返回的数值就是当前的日期。下面的表格
显示了为日期构造器的有效输入:  
   
  var   today   =   new   Date();         返回当前的日期和时间    
  var   newyear   =   new   Date(December   31,   1998   23:59:59);  输入的是表单的字符串   “月   日,年   小时:分钟:秒”   var   bday   =   new   Date(75,   1,   16);      参数是年份,月,日          
  var   bday   =   new   Date(75,   1,   16,   12,   0,   0);         参数是年份,月,日,小时,分钟,秒      
  这里作点补充:月份是从0开始的,比如一月份=0,二月份=1,三月份=3等等。      
  从上面可以看出创建一个日期对象是相对地简单,以下的表格是一系列的函数可以用于改变或者访问这些对象的属性:      
  日期访问方法      
  Method(方法)  
    Description   (描述)    
    Value(数值)     
  getYear()    
    返回年份的最后两位数字    
    2001    
  getMonth()    
    返回年份中的第几月(0到11)    
    5    
  getDate()    
    返回月份中的第几日(1到31)    
    2    
  getDay()    
    返回星期中的第几天   (0到6)    
    6    
  getTimezoneOffset()    
    返回当地时间与格林尼治天文台平均时间的差别    
    -480   (-8h)    
  getHours()    
    返回一天中的时针点数(0到23)    
    16    
     
  getMinutes()    
    返回分钟   (0..59)    
    8    
  getSeconds()    
    返回时间的秒   (0到59)    
    24    
  getTime()    
    返回自从公元1970年1月1日的毫秒数    
    991469304470   
  这里注意:IE浏览器的一些版本返回Timezoneoffset数值是用错误的符号,比如用”-”代替”+”等等。  
      日期设置方法  
      setDate()    
    设置每月中的第几天(从0到30)    
        setHours()    
    设置小时(从0到23)    
        setMinutes()    
    设置分钟(从0到59)    
        setMonth()    
    设置月份(从0到11)    
        setSeconds()    
    设置秒数(从0到59)    
       setTime()    
    设置时间(从公元以来的毫秒数)  
  setYear()    
    设置年份          
  其它的日期方法  
      parse    
    转化日期字符串为自从公元以来的毫秒数,比如Date.parse(“date   string”)    
        toString()    
    Sat   Jun   2   16:08:24   UTC+0800   2001    
        toGMTString()    
    Sat,   2   Jun   2001   08:08:24   UTC    
        toLocaleString()    
    2001年6月2日   16:08:24    
        
  所有的这些函数引用于独立的日期对象。如果你具有深厚的Java编程背景,那么你可以将它们认为是Date类的一些公共的方法而已。下面给出一个典型的例子来设置日期对象到当前时间加1年:    
      var   nextYear   =   new   Date();   //   初始化日期对象  

      nextyear.setYear(nextYear.getYear()   +   1);   //   增加1年   

  实际上,parse函数是Date对象的一个方法,而不是一个独立的日期变量,如果使用Java术语,它就称为Date类的一个静态方法。这个正是我们为什么使用Date.pase()而不使用somedate.parse()的原因啦。

 摘自:http://www.cnblogs.com/raymond19840709/archive/2007/08/31/877180.html

 

实例:把一个UTC(span控件中)时间显示为本地时间。


 1<span id='LastLoginDateLabel' runat =server></span>
 2 
 3
 4<script type="text/javascript" >
 5   
      function FormatLastSeen() {
                                var lastTime = document.getElementById('<%=_userViewForm.FindControl("_lastLoginDateLabel").ClientID %>');
                            
                                var UTCValue = new Date(lastTime.innerText.replace(/-/g, "/"));
                                var localTime = UTCValue.getTime();
                                var currentTime = new Date();
                                var localOffset = currentTime.getTimezoneOffset() * 60000;
                                var bombay = localTime - localOffset;
                                var disTime = new Date(bombay);


                                var difference = currentTime.getTime() - disTime.getTime();
                                if (diffDate < 0) return "";
                                var diffDate = difference / 3600 / 1000;
                                var day;
                                if (diffDate < 24)
                                    day = "Today";
                                else if (diffDate >= 24 && diffDate <= 24 * 2)
                                    day = "Yesterday";
                                else if (diffDate >= 24 * 2 && diffDate <= 24 * 7)
                                    day = Math.round(diffDate / 24) + "days ago";
                                else
                                    day = disTime.format('yyyy-mm-dd');

                                if ((diffDate < 2) && (day == "Today"))
                                    time = "Just Now";
                                else
                                    time = disTime.getHours()+':'+disTime.getMinutes();

                                lastTime.innerText = day + ' , ' + time;
                            }   

10
</script>

 

 

posted on 2009-03-30 13:36  无名  阅读(434)  评论(0编辑  收藏  举报