JavaScript 时间格式化
简介
在 JavaScript 中,我们经常需要对时间进行格式化操作,例如将时间转换成指定的字符串格式,或者将字符串格式的时间转换成 Date 对象。本文将介绍如何使用 JavaScript 对时间进行格式化操作,包括日期格式化、时间格式化和日期时间格式化。
日期格式化
JavaScript 中提供了 Date
对象来处理日期和时间。要将日期格式化成指定的字符串格式,我们可以使用 toLocaleDateString()
方法。该方法返回一个字符串,表示日期的本地化字符串表示。
let date = new Date();
let formattedDate = date.toLocaleDateString();
console.log(formattedDate); // 输出:'7/23/2022'
上述代码中,我们创建了一个 Date
对象 date
,然后使用 toLocaleDateString()
方法将其格式化成本地化的日期字符串,并将结果赋值给 formattedDate
变量。在控制台中输出 formattedDate
,将会得到当前日期的本地化字符串表示。
如果我们想自定义日期的格式,可以使用 toLocaleDateString()
方法的参数。该参数接受一个数组,用于指定日期的格式。数组的元素可以是 'year'
、'month'
和 'day'
等。下表列出了一些常用的日期格式:
格式 | 描述 |
---|---|
'year' |
年份,如:2022 |
'2-digit' |
两位数的年份,如:22 |
'month' |
月份,如:7 |
'2-digit' |
两位数的月份,如:07 |
'day' |
天数,如:23 |
'2-digit' |
两位数的天数,如:23 |
let date = new Date();
let options = { year: 'numeric', month: '2-digit', day: '2-digit' };
let formattedDate = date.toLocaleDateString('en-US', options);
console.log(formattedDate); // 输出:'07/23/2022'
上述代码中的 options
对象用于指定日期的格式,其中 year
、month
和 day
分别表示年份、月份和天数。我们给这些属性赋予了 'numeric'
和 '2-digit'
值,分别表示数字和两位数的格式。然后,我们将 options
对象作为参数传递给 toLocaleDateString()
方法,使得输出的日期字符串满足指定的格式。
时间格式化
在 JavaScript 中,要将时间格式化成指定的字符串格式,我们可以使用 toLocaleTimeString()
方法。该方法返回一个字符串,表示时间的本地化字符串表示。
let date = new Date();
let formattedTime = date.toLocaleTimeString();
console.log(formattedTime); // 输出:'10:30:45 PM'
上述代码中,我们创建了一个 Date
对象 date
,然后使用 toLocaleTimeString()
方法将其格式化成本地化的时间字符串,并将结果赋值给 formattedTime
变量。在控制台中输出 formattedTime
,将会得到当前时间的本地化字符串表示。
如果我们想自定义时间的格式,可以使用 toLocaleTimeString()
方法的参数。该参数接受一个数组,用于指定时间的格式。数组的元素可以是 'hour'
、'minute'
、'second'
和 'hour12'
等。下表列出了一些常用的时间格式:
格式 | 描述 |
---|---|
'hour' |
小时,如:10 |
'2-digit' |
两位数的小时,如:10 |
'minute' |
分钟,如:30 |
'2-digit' |
两位数的分钟,如:30 |
'second' |
秒数,如:45 |
'2-digit' |
两位数的秒数,如:45 |
'hour12' |
是否使用 12 小时制,如:true |
let date = new Date();
let options = { hour: '2-digit', minute: '2-digit', second: '2-digit', hour12: false };
let formattedTime = date.toLocaleTimeString('en-US', options);
console.log(formattedTime); // 输出:'22:30:45'
上述代码中的 options
对象用于指定时间的格式,