JavaScript 日期

JavaScript 使用 Date 对象来处理日期。

var d = new Date();

1. JavaScript 日期输出

默认情况下,JavaScript 将使用浏览器的时区并将日期显示为全文本字符串:

Tue Apr 02 2019 09:01:19 GMT+0800 (中国标准时间)

2. 创建 Date 对象

Date 对象由新的 Date() 构造函数创建。

有 4 种方法创建新的日期对象:

  • new Date()
  • new Date(year, month, day, hours, minutes, seconds, milliseconds)
  • new Date(milliseconds)
  • new Date(date string)

3. new Date()

new Date() 用当前日期和时间创建新的日期对象:

范例

var d = new Date();

日期对象是静态的。计算机时间正在滴答作响,但日期对象不会。

4. new Date(year, month, ...)

new Date(year, month, ...) 用指定日期和时间创建新的日期对象。

7个数字分别指定年、月、日、小时、分钟、秒和毫秒(按此顺序):

范例

var d = new Date(2018, 11, 24, 10, 33, 30, 0);

注释:JavaScript 从 0 到 11 计算月份。

一月是 0。十二月是11。

6个数字指定年、月、日、小时、分钟、秒:

范例

var d = new Date(2018, 11, 24, 10, 33, 30);

5个数字指定年、月、日、小时和分钟:

范例

var d = new Date(2018, 11, 24, 10, 33);

4个数字指定年、月、日和小时:

范例

var d = new Date(2018, 11, 24, 10);

3 个数字指定年、月和日:

范例

var d = new Date(2018, 11, 24);

2个数字指定年份和月份:

范例

var d = new Date(2018, 11);

您不能省略月份。如果只提供一个参数,则将其视为毫秒。

范例

var d = new Date(2018);

5. 上个世纪

一位和两位数年份将被解释为 19xx 年:

范例

var d = new Date(99, 11, 24);

范例

var d = new Date(9, 11, 24);

6. new Date(dateString)

new Date(dateString) 从日期字符串创建一个新的日期对象:

范例

var d = new Date("October 13, 2014 11:13:00");

7. JavaScript 将日期存储为毫秒

JavaScript 将日期存储为自 1970 年 1 月 1 日 00:00:00 UTC(协调世界时)以来的毫秒数。

零时间是 1970 年 1 月 1 日 00:00:00 UTC。

现在的时间是:1970 年 1 月 1 日之后的 1554166879383 毫秒。

8. new Date(milliseconds)

new Date(milliseconds) 创建一个零时加毫秒的新日期对象:

范例

var d = new Date(0);

1970年 1 月 1 日加上100 000 000 000毫秒,大约是 1973 年 3 月 3 日:

范例

var d = new Date(100000000000);

1970 年 1 月 1 日减去 100 000 000 000 毫秒大约是 1966 年 10 月 31 日:

范例

var d = new Date(-100000000000);

范例

var d = new Date(86400000);

一天(24 小时)是 86 400 000 毫秒。

9. 日期方法

创建 Date 对象时,可以使用许多方法对其进行操作。

日期方法允许您使用本地时间或 UTC(通用或 GMT)时间来获取和设置日期对象的年、月、日、小时、分钟、秒和毫秒。

日期方法和时区将在下一章中介绍。

10. 显示日期

JavaScript(默认情况下)将以全文本字符串格式输出日期:

Wed Mar 25 2015 08:00:00 GMT+0800 (中国标准时间)

在 HTML 中显示日期对象时,会使用 toString() 方法自动转换为字符串。

范例

d = new Date();
document.getElementById("demo").innerHTML = d;

等同于:

d = new Date();
document.getElementById("demo").innerHTML = d.toString();

toUTCString() 方法将日期转换为 UTC 字符串(一种日期显示标准)。

范例

var d = new Date();
document.getElementById("demo").innerHTML = d.toUTCString();

toDateString() 方法将日期转换为更易读的格式:

范例

var d = new Date();
document.getElementById("demo").innerHTML = d.toDateString();

下一章:JS 日期格式

JavaScript 日期格式化:有四种 JavaScript 日期输入格式:ISO 日期、短日期 长日期、完整日期。1. JavaScript 日期输出。2. JavaScript ISO 日期。3. ISO 日期(年和月)。4. ISO 日期(只有年)。5. ISO 日期(完整的日期加时、分和秒)。6. 时区:在设置日期时,如果不规定时区,则 JavaScript 会使用浏览器的时区。