JavaScript

JS日期与时间

2018-09-07  本文已影响12人  Lia代码猪崽

JavaScript中,所有Date实例都被存储成一个数字:距离Unix新纪元(1970 年 1 月 1 日 00:00:00)的毫秒数

一、构造Date对象

Date对象有 种构造方式。

1.构造时如果不传任何参数,就只会返回一个表示当前日期的Date对象。
const d = new Date()
console.log(d)  // Fri Sep 07 2018 15:26:39 GMT+0800 (中国标准时间)
2.通过传入一个会被JavaScript解析的字符串来构造
console.log(new Date('September 7, 2018'))  // Fri Sep 07 2018 00:00:00 GMT+0800 (中国标准时间)
console.log(new Date('September 7, 2018, GMT+0800'))  // Fri Sep 07 2018 00:00:00 GMT+0800 (中国标准时间)
3.通过传入一个毫秒数来构造
// 从Unix新纪元的时间创建日期
console.log(new Date(0))  // Thu Jan 01 1970 08:00:00 GMT+0800 (中国标准时间)
console.log(new Date(10000))  // Thu Jan 01 1970 08:00:10 GMT+0800 (中国标准时间)
console.log(new Date(1536307550023))  // Fri Sep 07 2018 16:05:50 GMT+0800 (中国标准时间)
// 使用负数创建新纪元之前的日期
console.log(new Date(-1536307550023))  // Tue Apr 26 1921 23:54:09 GMT+0800 (中国标准时间)
4.通过传入一个特定的本地日期来构造

总的来说格式为: new Date(年, 月, 日, 时, 分, 秒)

// 月份是从0开始的,一月为0,二月为1,九月为8等等
console.log(new Date(2018, 8))  // Sat Sep 01 2018 00:00:00 GMT+0800 (中国标准时间)
console.log(new Date(2018, 8, 7))  // Fri Sep 07 2018 00:00:00 GMT+0800 (中国标准时间)
console.log(new Date(2018, 8, 7, 16))  // Fri Sep 07 2018 16:00:00 GMT+0800 (中国标准时间)
console.log(new Date(2018, 8, 7, 16, 7))  // Fri Sep 07 2018 16:07:00 GMT+0800 (中国标准时间)
console.log(new Date(2018, 8, 7, 16, 7, 50))  // Fri Sep 07 2018 16:07:50 GMT+0800 (中国标准时间)
console.log(new Date(2018, 8, 7, 16, 7, 50, 23))  // Fri Sep 07 2018 16:07:50 GMT+0800 (中国标准时间)

二、将日期转换为毫秒数

Date对象的valueOf()方法,可以将日期转换为毫秒数。

console.log(new Date(2018, 8, 7, 16, 5, 50, 23).valueOf())  // 1536307550023
上一篇 下一篇

猜你喜欢

热点阅读