js Date学习

Date.parse()接收一个表示日期的字符串参数(参数错误时返回NaN),返回相应日期的毫秒数。(使用自 UTC(Coordinated Universal Time,国际协调时间)1970 年 1 月 1 日午夜(零时)开始经过的毫秒数)

日期参数格式:“月/日/年”,如6/13/2004;

       "英文月  日、年",如 January 12、2004;

       "英文星期几 英文月名 日 年 时:分:秒 时区”,如 Tue May 25 2004 00:00:00 GMT-0700;

        ISO 8601 扩展格式 YYYY-MM-DDTHH:mm:ss.sssZ(例如 2004-05-25T00:00:00);只有兼容ECMAScript 5的实现支持这种格式

 

Date.UTC() 方法同样也返回表示日期的毫秒数,与Date.parse()参数不同。

参数格式: "年份,月份(0开始),[天数(1-31,未提供为1,其他省略为0),小时数(0-23),分钟,秒,毫秒]"

// GMT 时间 2000 年 1 月 1 日午夜零时
var y2k = new Date(Date.UTC(2000, 0));
// GMT 时间 2005 年 5 月 5 日下午 5:55:55
var allFives = new Date(Date.UTC(2005, 4, 5, 17, 55, 55));

 

当new Date()接收上述参数时,会在后台自动模仿跟参数对应的 Date.parse()或Date.UTC()方法,但有一点明显不同:new Date()日期和时间都基于本地时区而非 GMT 来创建,Date.UTC()基于GMT

// 本地时间 2000 年 1 月 1 日午夜零时
var y2k = new Date(2000, 0);
// 本地时间 2005 年 5 月 5 日下午 5:55:55
var allFives = new Date(2005, 4, 5, 17, 55, 55);

 

Date.now() ECMAScript5  返回表示调用这个方法时的日期和时间的毫秒数  IE9+、Firefox 3+、Safari 3+、Opera 10.5 和 Chrome

兼容写法 //取得毫秒数

var start = +new Date();

 

Date 类型的 valueOf() 方法,则根本不返回字符串,而是返回日期的毫秒表示。因此,可以方便使用比较操作符(小于或大于)来比较日期值。请看下面的例子。
var date1 = new Date(2007, 0, 1); //"January 1, 2007"
var date2 = new Date(2007, 1, 1); //"February 1, 2007"
alert(date1 < date2); //true
alert(date1 > date2); //false

 

getTime()
返回表示日期的毫秒数;与 valueOf() 方法返回的值相同
setTime( 毫秒 )  以毫秒数设置日期,会改变整个日期
getFullYear()
取得4位数的年份(如2007而非仅07)
getUTCFullYear()
返回UTC日期的4位数年份
setFullYear( 年 )  设置日期的年份。传入的年份值必须是4位数字(如2007而非仅07)
setUTCFullYear( 年 )  设置UTC日期的年份。传入的年份值必须是4位数字(如2007而非仅07)
getMonth()
返回日期中的月份,其中0表示一月,11表示十二月
getUTCMonth()
返回UTC日期中的月份,其中0表示一月,11表示十二月
setMonth( 月 )  设置日期的月份。传入的月份值必须大于0,超过11则增加年份
setUTCMonth( 月 )  设置UTC日期的月份。传入的月份值必须大于0,超过11则增加年份
getDate()
返回日期月份中的天数(1到31)
getUTCDate()
返回UTC日期月份中的天数(1到31)
setDate( 日 )  设置日期月份中的天数。如果传入的值超过了该月中应有的天数,则增加月份
setUTCDate( 日 )  设置UTC日期月份中的天数。如果传入的值超过了该月中应有的天数,则增加月份
getDay()
返回日期中星期的星期几(其中0表示星期日,6表示星期六)
getUTCDay()
返回UTC日期中星期的星期几(其中0表示星期日,6表示星期六)
getHours()
返回日期中的小时数(0到23)
getUTCHours()
返回UTC日期中的小时数(0到23)
setHours( 时 )  设置日期中的小时数。传入的值超过了23则增加月份中的天数
setUTCHours( 时 )  设置UTC日期中的小时数。传入的值超过了23则增加月份中的天数
getMinutes()
返回日期中的分钟数(0到59)
getUTCMinutes()
返回UTC日期中的分钟数(0到59)
setMinutes( 分 )  设置日期中的分钟数。传入的值超过59则增加小时数
setUTCMinutes( 分 )  设置UTC日期中的分钟数。传入的值超过59则增加小时数
getSeconds()
返回日期中的秒数(0到59)
getUTCSeconds()
返回UTC日期中的秒数(0到59)
setSeconds( 秒 )  设置日期中的秒数。传入的值超过了59会增加分钟数
setUTCSeconds( 秒 )  设置UTC日期中的秒数。传入的值超过了59会增加分钟数
getMilliseconds()
返回日期中的毫秒数
getUTCMilliseconds()
返回UTC日期中的毫秒数
setMilliseconds( 毫秒 )  设置日期中的毫秒数

 setUTCMilliseconds( 毫秒 ) 设置UTC日期中的毫秒数
 getTimezoneOffset()
 返回本地时间与UTC时间相差的分钟数。例如,美国东部标准时间返回300。在某
 地进入夏令时的情况下,这个值会有所变化

 

 

 

GMT和UTC的区别 http://zhidao.baidu.com/link?url=OMPMjlbVQViF28o4J327-DsPh2Q1n4968Vu0MiVoOWEtwYriGrp5LGfiD-BfmNMSEZPXhxY7NOxXzVe1vXFxC_

posted @ 2016-07-28 19:57  四月既望  阅读(194)  评论(1编辑  收藏  举报