创建日期
var date = new Date() //创建当前时间
var data = new Date(value)
var data = new Date(dateString)
var data = new Date(year, month[, day[, hour[, minutes[, seconds[, milliseconds]])
只能通过调用 Date 构造函数来实例化日期对象:以常规函数调用它(即不加 new 操作符)将会返回一个字符串,而不是一个日期对象。另外,不像其他JavaScript 类型,Date 对象没有字面量格式。
- 参数
当Date作为构造函数调用并传入多个参数时,如果数值大于合理范围时(如月份为13或者分钟数为70),相邻的数值会被调整。比如 new Date(2013, 13, 1)等于new Date(2014, 1, 1),它们都表示日期2014-02-01(注意月份是从0开始的)。其他数值也是类似,new Date(2013, 2, 1, 0, 70)等于new Date(2013, 2, 1, 1, 10),都表示时间2013-03-01T01:10:00。
当Date作为构造函数调用并传入多个参数时,所定义参数代表的是当地时间。如果需要世界协调时,使用 new Date({{jsxref("Date.UTC()", "Date.UTC(...)")}}) 和相同参数
- value
- 代表自1970年1月1日00:00:00 (世界标准时间) 起经过的毫秒数。
- dateString
- 表示日期的字符串值。该字符串应该能被 Date.parse() 方法识别(符合 IETF-compliant RFC 2822 timestamps 或 version of ISO8601)。
- year
- 代表年份的整数值。为了避免2000年问题最好指定4位数的年份; 使用 1998, 而不要用 98.
- month
- 代表月份的整数值从0(1月)到11(12月)。
- day
- 代表一个月中的第几天的整数值,从1开始。
- hour
- 代表一天中的小时数的整数值 (24小时制)。
- minute
- 分钟数。
- second
- 秒数。
- millisecond
- 表示时间的毫秒部分的整数值。
- 描述
- 如果没有输入任何参数,则Date的构造器会依据系统设置的当前时间来创建一个Date对象。
- 如果提供了至少两个参数,其余的参数均会默认设置为1(如果没有提供day参数)或者0。
- JavaScript的时间是由世界标准时间(UTC)1970年1月1日开始,用毫秒计时,一天由86,400,000毫秒组成。Date对象的范围是-100,000,000天至100,000,000天(等效的毫秒值)。
- JavaScript的Date对象为跨平台提供了统一的行为。时间属性可以在不同的系统中表示相同的时刻,而如果使用了本地时间对象,则反映当地的时间。
- JavaScript 的Date对象提供了数个UTC时间的方法,也相应提供了当地时间的方法。UTC,也就是我们所说的格林威治时间,指的是time中的世界时间标准。而当地时间则是指执行JavaScript的客户端电脑所设置的时间。
- 以一个函数的形式来调用JavaScript的Date对象(i.e., 不使用 new 操作符)会返回一个代表当前日期和时间的字符串。
date对象获取时间方法
获取年份
dateObj.getFullYear()
根据本地时间,返回一个指定日期对象的年份,该方法返回一个1000 到 9999的四位数字年份,比如1995。
获取月份
dateObj.getMonth()
根据本地时间,返回一个指定的日期对象的月份,为基于0的值(0表示一年中的第一月)。
获取日期
dateObj.getDate()
根据本地时间,返回一个指定的日期对象为一个月中的第几天。
获取小时数
dateObj.getHours()
根据本地时间,返回一个指定的日期对象的小时。
获取分
dateObj.getMinutes()
根据本地时间,返回一个指定的日期对象的分钟数。
获取秒
dateObj.getSeconds()
根据本地时间,返回一个指定的日期对象的秒数。
获取毫秒
dateObj.getMilliseconds()
根据本地时间,返回一个指定的日期对象的毫秒数。
获取总毫秒数
dateObj.getTime()
getTime 方法的返回值一个数值,表示从1970年1月1日0时0分0秒(UTC,即协调世界时)距离该日期对象所代表时间的毫秒数。
Date对象设置时间方法
设置年份
dateObj.setFullYear()
根据本地时间,根据本地时间为指定日期对象设置年份
设置日期
dateObj.setDate()
根据本地时间,根据本地时间为指定日期对象设置一个月中的第几天。
设置小时数
dateObj.setHours()
根据本地时间,根据本地时间为指定日期对象设置小时。
设置分
dateObj.setMinutes()
根据本地时间,根据本地时间为指定日期对象设置分钟数。
设置秒
dateObj.setSeconds()
根据本地时间,根据本地时间为指定日期对象设置秒数。
设置毫秒
dateObj.setMilliseconds()
根据本地时间,根据本地时间为指定日期对象设置毫秒数。
根据总毫秒数设置时间
dateObj.setTime(timeValue)
setTime() 方法以一个表示从1970-1-1 00:00:00 UTC计时的毫秒数为来为 Date 对象设置时间。
获取一个月份的天数
new Date (2001,3,0) // 2001-02-28