胖在一方

出得厅堂入得厨房的胖子

导航

Javascript(十一) Date

Posted on 2008-03-05 17:04  胖在一方  阅读(363)  评论(0)    收藏  举报

    ECMAScript把日期存储为距离UTC时间1970年1月1日凌晨12点的豪秒数. UTC是 Universal Time Code(通用时间代码,也叫Greenwich Mean Time格林尼治标准时间)  

        var d  =new Date();  // 默认就是当天的日期和时间
        alert(d.toLocaleDateString()); //outputs 2007年9月14日
        alert(d.toLocaleString());  //outputs 2007年9月14日 08:49:34  显示到秒数

可以使用两种方式设置日期和时间的值,
第一种方法,只声明距离1970年1月1日凌晨12点的12的毫秒数
        var d =new Date(1000*60*60*24); //一天的豪秒数 86400000
        alert(d.toLocaleDateString()); //outputs 1970年1月2日
        alert(d.valueOf());  //output c  = 1000*60*60*24


第二种方法 parse() 和 UTC()两种方法,可以与创建Date对象的方法一起使用.
Date.parse()方法
     解析一个包含日期的字符串,并返回该日期与 1970 年 1 月 1 日午夜之间所间隔的毫秒数。
注意:
    1、短日期可以使用“/”或“-”作为日期分隔符,但是必须用月/日/年的格式来表示,例如"7/20/96"。 
    2、年份值可以用 2 位数字表示也可以用 4 位数字表示。如果使用 2 位数字来表示年份,那么该年份必须大于或等于 70。 
    如果传递给parse的参数不能解析成不能转换成字符串,则返回NaN

        var d2 = new Date("09-22-2007");
        alert(d2.toLocaleDateString()); 
//outputs 2007年9月22日        
        
var d3 =new Date(0);
        alert(d3.toLocaleDateString()); outputs 1970年1月1日

Date.UTC()方法 
    Date.UTC(year,month,date[,hours][,minutes][,seconds][,ms]) year 必选项。完整的年份,比如,1976(而不是 76)。 month 必选项。表示的月份,是从 0 到 11 之间的整数( 1 月至 12 月)。
date 必选项。
    表示日期,是从 1 到 31 之间的整数。
hours 可选项。 
    如果提供了 minutes 则必须给出。表示小时,是从 0 到 23 的整数(午夜到 11pm)。
minutes 可选项。 
    如果提供了 seconds 则必须给出。表示分钟,是从 0 到 59 的整数。
seconds 可选项。 
    如果提供了 milliseconds 则必须给出。表示秒钟,是从 0 到 59 的整数。
ms 可选项。 
    表示毫秒,是从 0 到 999 的整数。
        var d= new Date(Date.UTC(2007,0,12));
        alert(d.toLocaleDateString()); 
//outputs 2007年1月12日        
        
var d1 =new Date(2007,01,23);
        alert(d1.toLocaleDateString());  
//outputs 2007年2月23日

        d2 = new Date(d1.getFullYear(),d1.getMonth(),d1.getDate() +7);
        alert(d2.toLocaleDateString());  
// outputs 1970年1月8日

Date的一些方法
getFullYear() 返回4位数字表示的年份
getUTCFullYear() 返回4位数字表示的UTC年份
setFullYear() 设置4为数字表示的年份
setUTCFullYear() 设置4位数字表示的UTC年份
getMonth() 返回日期的月份值,从0-11 表示
getUTCMonth() 返回日期的UTC月份值从0-11 表示
setMonth() 设置日期的月份(大于0),对于大于11的数字,开始累计年数
getDate() 返回该日期在该月的天数
setDate() 设置该日期在该月中的天数
getUTCDate() 返回该UTC日期中该月的天数
setUTCDate() 设置该UTC日期中该月的天数
getDay() 返回该日期为星期几
getUTCDay() 返回该UTC日期为星期几