📅  最后修改于: 2023-12-03 14:48:02.696000             🧑  作者: Mango
在 TypeScript 中,我们可以使用内置的 Date
类来表示日期和时间。默认情况下,日期格式是一个字符串,包含日期和时间,例如 Thu Feb 18 2021 09:00:00 GMT+0800 (中国标准时间)
。然而,在实际开发中,我们可能需要将日期格式更改为特定的格式,例如 2021-02-18 09:00:00
。
下面是几个方法来更改 TypeScript 中的日期格式:
可以使用 Intl.DateTimeFormat
对象来格式化日期。该对象允许您根据特定区域设置格式化选项,并使您能够轻松地格式化日期。
const date = new Date();
const formatOptions = {
year: 'numeric',
month: '2-digit',
day: '2-digit',
hour: 'numeric',
minute: 'numeric',
second: 'numeric',
hour12: false,
timeZone: 'Asia/Shanghai'
};
const formattedDate = new Intl.DateTimeFormat('en-US', formatOptions).format(date);
console.log(formattedDate); // output: "02/18/2021, 09:00:00"
Moment.js 是一个流行的 JavaScript 库,它允许您轻松地解析、验证、操作和显示日期和时间。Moment.js 支持许多不同的日期格式,并具有强大的格式选项。
首先,我们需要安装 Moment.js:
npm install moment
然后,我们可以使用 Moment.js 将日期格式更改为我们所需的格式:
import moment from 'moment';
const date = new Date();
const formattedDate = moment(date).format('YYYY-MM-DD HH:mm:ss');
console.log(formattedDate); // output: "2021-02-18 09:00:00"
您还可以编写自己的函数来格式化日期。以下是一个将日期格式更改为 YYYY-MM-DD HH:mm:ss
的简单示例:
const formatDate = (date: Date) => {
const year = date.getFullYear();
const month = date.getMonth() + 1 < 10 ? `0${date.getMonth() + 1}` : date.getMonth() + 1;
const day = date.getDate() < 10 ? `0${date.getDate()}` : date.getDate();
const hours = date.getHours() < 10 ? `0${date.getHours()}` : date.getHours();
const minutes = date.getMinutes() < 10 ? `0${date.getMinutes()}` : date.getMinutes();
const seconds = date.getSeconds() < 10 ? `0${date.getSeconds()}` : date.getSeconds();
return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`;
}
const date = new Date();
const formattedDate = formatDate(date);
console.log(formattedDate); // output: "2021-02-18 09:00:00"
以上是三种在 TypeScript 中更改日期格式的方法。无论您选择哪种方法,都可以轻松地将日期格式更改为所需的格式。