返回

JavaScript日期权威指南 - 揭秘日期API背后的奥秘

前端

揭秘Date对象

JavaScript中的Date对象是一个表示日期和时间的对象,它可以包含年、月、日、时、分、秒和毫秒等信息。通过使用Date对象,你可以轻松获取当前日期和时间,并进行日期和时间的各种操作。

创建Date对象

创建Date对象有以下几种方式:

  • 使用new Date():这是创建Date对象的最基本方式,它会创建一个表示当前日期和时间的Date对象。

  • 使用new Date(milliseconds):这种方式可以创建指定毫秒数对应的Date对象。

  • 使用new Date(dateString):这种方式可以创建指定日期字符串对应的Date对象。

  • 使用new Date(year, month, day, hours, minutes, seconds, milliseconds):这种方式可以创建指定日期和时间对应的Date对象。

Date对象的方法

Date对象提供了许多有用的方法,可以用于获取和设置日期和时间信息,以及进行日期和时间的各种操作。

  • getTime():获取Date对象表示的毫秒数。

  • setTime():设置Date对象表示的毫秒数。

  • getFullYear():获取Date对象表示的年份。

  • getMonth():获取Date对象表示的月份(0-11)。

  • getDate():获取Date对象表示的日期。

  • getHours():获取Date对象表示的小时。

  • getMinutes():获取Date对象表示的分钟。

  • getSeconds():获取Date对象表示的秒。

  • getMilliseconds():获取Date对象表示的毫秒。

  • setFullYear():设置Date对象表示的年份。

  • setMonth():设置Date对象表示的月份(0-11)。

  • setDate():设置Date对象表示的日期。

  • setHours():设置Date对象表示的小时。

  • setMinutes():设置Date对象表示的分钟。

  • setSeconds():设置Date对象表示的秒。

  • setMilliseconds():设置Date对象表示的毫秒。

Date对象的其他方法

除了上述方法外,Date对象还提供了以下方法:

  • toDateString():返回Date对象表示的日期字符串。

  • toTimeString():返回Date对象表示的时间字符串。

  • toLocaleDateString():返回Date对象表示的本地日期字符串。

  • toLocaleTimeString():返回Date对象表示的本地时间字符串。

  • toString():返回Date对象表示的字符串。

  • JSON.parse():将JSON字符串转换为Date对象。

  • JSON.stringify():将Date对象转换为JSON字符串。

ECMAScript国际化API

ECMAScript国际化API提供了许多有用的函数,可以用于格式化和解析日期和时间。

  • Intl.DateTimeFormat():创建一个DateTimeFormat对象,用于格式化日期和时间。

  • Intl.DateTimeFormat.format():使用DateTimeFormat对象格式化日期和时间。

  • Intl.DateTimeFormat.parse():使用DateTimeFormat对象解析日期和时间字符串。

常见问题

  • 如何获取当前日期和时间?
const now = new Date();
  • 如何获取指定日期和时间?
const date = new Date(2023, 3, 8, 10, 30, 0, 0);
  • 如何获取Date对象表示的毫秒数?
const milliseconds = date.getTime();
  • 如何设置Date对象表示的毫秒数?
date.setTime(milliseconds);
  • 如何获取Date对象表示的年份?
const year = date.getFullYear();
  • 如何获取Date对象表示的月份?
const month = date.getMonth(); // 0-11
  • 如何获取Date对象表示的日期?
const day = date.getDate();
  • 如何获取Date对象表示的小时?
const hours = date.getHours();
  • 如何获取Date对象表示的分钟?
const minutes = date.getMinutes();
  • 如何获取Date对象表示的秒?
const seconds = date.getSeconds();
  • 如何获取Date对象表示的毫秒?
const milliseconds = date.getMilliseconds();
  • 如何设置Date对象表示的年份?
date.setFullYear(year);
  • 如何设置Date对象表示的月份?
date.setMonth(month); // 0-11
  • 如何设置Date对象表示的日期?
date.setDate(day);
  • 如何设置Date对象表示的小时?
date.setHours(hours);
  • 如何设置Date对象表示的分钟?
date.setMinutes(minutes);
  • 如何设置Date对象表示的秒?
date.setSeconds(seconds);
  • 如何设置Date对象表示的毫秒?
date.setMilliseconds(milliseconds);
  • 如何获取Date对象表示的日期字符串?
const dateString = date.toDateString();
  • 如何获取Date对象表示的时间字符串?
const timeString = date.toTimeString();
  • 如何获取Date对象表示的本地日期字符串?
const localDateString = date.toLocaleDateString();
  • 如何获取Date对象表示的本地时间字符串?
const localTimeString = date.toLocaleTimeString();
  • 如何将JSON字符串转换为Date对象?
const date = JSON.parse(jsonString);
  • 如何将Date对象转换为JSON字符串?
const jsonString = JSON.stringify(date);