Date
JavaScript Date
对象提供了一种方式 来处理日期和时间。您可以用许多不同的 方式对其进行实例化,具体取决于想要的结果。例如,您可以在没有参数的情况下对其进行实例化:
var myDate = new Date();
或传递 milliseconds
作为一个参数:
var myDate = new Date(milliseconds);
您可以将一个日期字符串作为一个参数传递:
var myDate = new Date(dateString);
或者您可以传递多个参数来创建一个完整的日期:
var myDate = new Date(year, month, day, hours, minutes, seconds, milliseconds);
此外,有几种方法可用于 Date
对象,一旦该对象 得到实例化,您便可以使用这些方法。大多数可用的方法围绕 获取当前时间的特定部分。以下方法是 可用于 Date
对象的 getter 方法:
-
getDate
-
getDay
-
getFullYear
-
getHours
-
getMilliseconds
-
getMinutes
-
getMonth
-
getSeconds
-
getTime
-
getTimezoneOffset
如您所见,每个方法所 返回的值都相当简单。区别在于所返回的值范围。例如, getDate
方法返回 一个月份的天数,范围从 1 到 31;getDay
方法返回每周的天数,范围从 0 到 6; getHours
方法返回小时数值, 范围从 0 到 23;getMilliseconds
函数返回毫秒数值,范围从 0 到 999。 getMinutes
和 getSeconds
方法返回一个范围从 0 到 59 的值,getMonth
方法返回一个 从 0 到 11 之间的月份数值。本列表中惟一独特的方法 是 getTime
和 getTimezoneOffset
。 getTime
方法返回 自 1/1/1970 中午 12 点的毫秒数,而 getTimezoneOffset
方法返回 格林尼治标准时间和本地时间之间的时间差,以分钟为单位。
对于大多数 getter 方法,还有一个 setter 方法,接受 相应的值范围内的数值参数。setter 方法 如下所示:
-
setDate
-
setFullYear
-
setHours
-
setMilliseconds
-
setMinutes
-
setMonth
-
setSeconds
-
setTime
对于上述所有 getter 方法,有一些匹配的方法 返回相同的值范围,只是这些值以 国际标准时间设置。这些方法包括:
-
getUTCDate
-
getUTCDay
-
getUTCFullYear
-
getUTCHours
-
getUTCMilliseconds
-
getUTCMinutes
-
getUTCMonth
-
getUTCSeconds
当然,由于对于所有原始 getter 方法都有 setter 方法, 对于国际标准时间也一样。这些方法包括:
-
setUTCDate
-
setUTCFullYear
-
setUTCHours
-
setUTCMilliseconds
-
setUTCMinutes
-
setUTCMonth
-
setUTCSeconds
正如在本文开头提到的,我不提供许多 关于 toString
方法的信息,但是 在 Date
对象中有一些方法可将日期转换为一个字符串,值得一提。在某些 情况下,需要将日期或日期的一部分转换为一个 字符串。例如,如果您将其追加到一个字符串或在 比较语句中使用它。有几个方法可用于 Date
对象,提供略微不同的 方法将其转换成字符串,包括:
-
toDateString
-
toLocaleDateString
-
toLocaleTimeString
-
toLocaleString
-
toTimeString
-
toUTCString
toDateString
方法将日期转换为 字符串:
var myDate = new Date(); document.write(myDate.toDateString());
toDateString
返回当前日期, 格式为 Tue Jul 19 2011。
toTimeString
方法将时间从 Date
对象转换为字符串:
var myDate = new Date(); document.write(myDate.toTimeString());
toTimeString
将时间作为字符串返回, 格式为 23:00:00 GMT-0700 (MST)。
最后一种将日期转换为字符串的方法是 toUTCString
,它将日期转换为 国际标准时间的字符串。
有几种方法使用区域设置将日期转换成字符串,但是在撰写本文之时 Google Chrome 还不支持这几种方法。不支持的方法 包括 toLocaleDateString
、toLocaleTimeString
和 toLocaleString
。
JavaScript Date
对象乍看起来似乎很简单, 但是它不仅仅是一种显示 当前日期的有用方式。它取决于您要创建的功能。 例如,Date
对象是 创建倒计时钟表或其他与时间相关的功能的基础。