JavaScript 从零开始程序员

[JavaScript] (Day-12) - Date 日期对

2017-06-30  本文已影响54人  已重置2020
Care and diligence bring luck. 谨慎和勤奋,带来好运气。

Date

Date对象用来表示日期和时间


日期创建方式一

new Date()

var now = new Date();
now; // Thu Jun 29 2017 16:48:22 GMT+0800 (CST)
now.getFullYear(); // 2017, 年份
now.getMonth(); // 5, 月份,注意月份范围是0~11,5表示六月
now.getDate(); // 29, 表示24号
now.getDay(); // 4, 表示星期四
now.getHours(); // 16, 24小时制
now.getMinutes(); // 48, 分钟
now.getSeconds(); // 22, 秒
now.getMilliseconds(); // 875, 毫秒数
now.getTime(); // 1498724181898, 以number形式表示的时间戳

日期创建方式二

创建一个指定日期和时间的Date对象

new Date(datestring)

var d = new Date(2017, 6, 30, 20, 15, 30, 123);
d; // Fri Jun 30 2017 20:15:30 GMT+0800 (CST)

非常坑的地方,就是JavaScript的月份范围用整数表示是0~11,0表示一月,1表示二月……,所以要表示6月,我们传入的是5

通过解析一个符合ISO 8601格式的字符串,创建一个指定日期和时间

var d = Date.parse("2017-06-30T19:49:22.875+08:00");
d; // 1435146562875


日期创建方式三

时间戳转换为一个Date

new Date(milliseconds)

var d = new Date(1498724181898);
d; // Wed Jun 29 2017 16:20:22 GMT+0800 (CST)

时区

var d = new Date(1498724181898);
d.toLocaleString(); // '2017/6/29 下午4:16:21',本地时间(北京时区+8:00),显示的字符串与操作系统设定的格式有关
d.toUTCString(); // 'Thu, 29 Jun 2017 08:16:21 GMT',UTC时间,与本地时间相差8小时


下边列出了日期的一系列方法及对应的描述。

方法 描述
Date() 返回当日的日期和时间
getDate() 根据本地时从Date对象返回一个月中的某一天(1 ~ 31)
getDay() 根据本地时从Date对象返回一周中的某一天(1 ~ 6)
getFullYear() 根据本地时从 Date 对象以四位数字返回年份
getHours() 根据本地时返回 Date 对象的小时 (0 ~ 23)
getMilliseconds() 根据本地时返回 Date 对象的毫秒(0 ~ 999)
getMinutes() 根据本地时返回 Date 对象的分钟 (0 ~ 59)
getMonth() 根据本地时从Date对象返回月份(1 ~ 11)
getSeconds() 根据本地时返回 Date 对象的秒数 (0 ~ 59)
getTime() 根据本地时返回 1970 年 1 月 1 日至今的毫秒数
getTimezoneOffset() 返回本地时间与格林威治标准时间 (GMT) 的分钟差
getUTCDate() 根据世界时从 Date 对象返回月中的一天 (1 ~ 31)
getUTCDay() 根据世界时从 Date 对象返回周中的一天 (0 ~ 6)
getUTCFullYear() 根据世界时从 Date 对象返回四位数的年份
getUTCHours() 根据世界时返回 Date 对象的小时 (0 ~ 23)
getUTCMilliseconds() 根据世界时返回 Date 对象的毫秒(0 ~ 999)
getUTCMinutes() 根据世界时返回 Date 对象的分钟 (0 ~ 59)
getUTCMonth() 根据世界时从 Date 对象返回月份 (0 ~ 11)
getUTCSeconds() 根据世界时返回 Date 对象的秒钟 (0 ~ 59)
getYear() 弃用,返回在指定的日期根据当地时间。使用getFullYear()代替。
setDate() 根据本地时设置 Date 对象中月的某一天 (1 ~ 31)
setFullYear() 根据本地时设置 Date 对象中的年份(四位数字)
setHours() 根据本地时设置 Date 对象中的小时 (0 ~ 23)
setMilliseconds() 根据本地时设置 Date 对象中的毫秒 (0 ~ 999)
setMinutes() 根据本地时设置 Date 对象中的分钟 (0 ~ 59)
setMonth() 根据本地时设置 Date 对象中月份 (0 ~ 11)
setSeconds() 根据本地时设置 Date 对象中的秒钟 (0 ~ 59)
setTime() 根据本地时以毫秒设置 Date 对象
setUTCDate() 根据世界时设置 Date 对象中月份的一天 (1 ~ 31)
setUTCFullYear() 根据世界时设置 Date 对象中的年份(四位数字)
setUTCHours() 根据世界时设置 Date 对象中的小时 (0 ~ 23)
setUTCMilliseconds() 根据世界时设置 Date 对象中的毫秒 (0 ~ 999)
setUTCMinutes() 根据世界时设置 Date 对象中的分钟 (0 ~ 59)
setUTCMonth() 根据世界时设置 Date 对象中的月份 (0 ~ 11)
setUTCSeconds() 根据世界时设置 Date 对象中的秒钟 (0 ~ 59)
setYear() 弃用,设置为指定的日期根据当地时间。使用 setFullYear() 代替。
toDateString() 把 Date 对象的日期部分转换为字符串
toGMTString() 弃用,将日期转换为一个字符串,使用互联网格林尼治时间约定。使用 toUTCString() 代替。
toLocalDateString() 根据本地时间格式,把 Date 对象的日期部分转换为字符串
toLocalFormat() 将日期转换为一个字符串,使用格式化字符串。
toLocalString() 根据本地时间格式,把 Date 对象转换为字符串
toLocalTimeString() 根据本地时间格式,把 Date 对象的时间部分转换为字符串
toSource() 返回一个字符串代表一个等价的日期对象的源码,您可以使用这个值来创建一个新的对象
toString() 把 Date 对象转换为字符串
toTimeString() 把 Date 对象的时间部分转换为字符串
toUCTString() 根据世界时,把 Date 对象转换为字符串
valueOf() 返回 Date 对象的原始值

Date 静态方法

方法 描述
Date.parse() 返回 1970 年 1 月 1 日午夜到指定日期(字符串)的毫秒数
Date.UTC() 根据世界时返回 1970 年 1 月 1 日 到指定日期的毫秒数
上一篇 下一篇

猜你喜欢

热点阅读