Javascript 日期/时间格式化

在前端开发中,经常需要将日期和时间以特定的格式进行展示。Javascript 提供了多种日期/时间格式化方法,本篇文章将介绍这些方法的用法和注意事项。

Date 对象

在 Javascript 中,可以使用 Date 对象来表示日期和时间。创建一个 Date 对象,一般有以下几种方式:

-- ------- ---- --
----- --- - --- -------

-- -------------- ---- --
----- --------- - -------------- -- -- --- -- ------------------------
----- ---- - --- ----------------

-- ------------ ---- --
----- ---- - -----
----- ----- - -- -- - -- - --- -- - -
----- --- - --
----- ---- - -- -- --------
----- ------ - ---
----- ------ - --
----- ----------- - --
----- ---------- - --- ---------- ------ ---- ----- ------- ------- -------------

在以上代码中,第一种方式创建的 Date 对象表示当前时间(即代码执行时的时间)。第二种方式创建的 Date 对象表示指定的时间戳所代表的日期和时间。第三种方式创建的 Date 对象表示指定的年、月、日、小时、分钟、秒和毫秒所组成的日期和时间。

除此之外,Date 对象还提供了一些方法来获取和设置日期和时间的各个部分,例如:

----- ---- - --- -------

-- ----------
----- ---- - ------------------- -- ----
----- ----- - ---------------- -- ------ - --
----- --- - --------------- -- -
----- ---- - ---------------- -- --------
----- ------ - ------------------ -- -
----- ------ - ------------------ -- -
----- ----------- - ----------------------- -- -

-- ----------
-----------------------
----------------- -- ---- - -
----------------
-----------------
--------------------
--------------------
--------------------------

日期/时间格式化

在 Javascript 中,可以使用 Intl.DateTimeFormat 对象和 Date.prototype.toLocaleStringDate.prototype.toLocaleDateString 方法来进行日期/时间格式化。以下是它们的用法示例:

Intl.DateTimeFormat 对象

----- ---- - --- -------

-- -----------------------
----- ---------- - --- ----------------------
-------------------------------------

-- ----------------------- - - - - - ------ -------
----- ---------- - --- ---------------------------- -
  ----- ----------
  ------ -------
  ---- ----------
  -------- -------
  ----- ----------
  ------- ----------
  ------- -----
---
-------------------------------------

在以上代码中,Intl.DateTimeFormat 对象用于格式化日期和时间。第一个示例中,使用默认选项进行格式化,得到了一个类似 4/7/2023 的结果。第二个示例中,指定了语言为简体中文('zh-CN'),并自定义了各个选项来得到一个类似 2023 年 4 月 7 日 星期五,上午 10:28 的结果。

Date.prototype.toLocaleString 和 Date.prototype.toLocaleDateString 方法

----- ---- - --- -------

-- ---------------------- -------- ----
-----------------------------------

-- -----------------------------

- ----------------------------------------------------------- --------
---------------------------------------------------------------------------------------