在 JavaScript 中将日期格式化为 DD/MM/YYYY
Format a Date as DD/MM/YYYY in JavaScript
将日期格式化为 dd/mm/yyyy:
- 使用
getDate()
,getMonth()
和getFullYear()
方法获取日期的年月日。 - 如果值小于 ,则在日和月数字前添加前导零
10
。 - 将结果添加到数组并使用正斜杠分隔符将它们连接起来。
索引.js
function padTo2Digits(num) { return num.toString().padStart(2, '0'); } function formatDate(date) { return [ padTo2Digits(date.getDate()), padTo2Digits(date.getMonth() + 1), date.getFullYear(), ].join('/'); } // 👇️ 24/10/2021 (mm/dd/yyyy) console.log(formatDate(new Date())); // 👇️️ 24/07/2027 (mm/dd/yyyy) console.log(formatDate(new Date(2027, 6, 24)));
我们创建了一个padTo2Digits
函数,如果月份或日期仅包含一位数字(小于10
),该函数负责添加前导零。
索引.js
function padTo2Digits(num) { return num.toString().padStart(2, '0'); } console.log(padTo2Digits(2)); // 👉️ '02' console.log(padTo2Digits(6)); // 👉️ '06' console.log(padTo2Digits(10)); // 👉️ '10'
我们希望确保结果始终具有一致的格式并且具有 2 位数字的月份和日期,因此我们使用了
padStart
方法。
我们传递给
padTo2Digits
函数的第一个参数是字符串的总长度,所以如果日期或月份已经有 2 位数字,它就不会填充它们。我们创建的下一个函数是将日期格式化为dd/mm/yyyy
.
该函数使用以下 3 个Date
相关方法。
-
Date.getDate
1
– 返回一个介于和之间的整数,31
表示特定日期的月中日期。 -
Date.getMonth
0
– 返回一个介于(January) 和(December)之间的整数11
,代表给定日期的月份。是的,不幸的是该getMonth
方法已关闭1
。 -
Date.getFullYear
方法 – 返回代表与日期对应的年份的四位数字。
该
getMonth
方法返回从 0 到 11 的从零开始的月份索引,表示一月是0
,十二月是11
。该getMonth
方法是从零开始的,因此我们添加1
了它的返回值。
最后一步是将结果包装在一个数组中,这样我们就可以用正斜杠/
分隔符连接它们。
索引.js
console.log(['28', '06', '2027'].join('/')); // 👉️ '28/06/2027' console.log(['16', '09', '2026'].join('/')); // 👉️ '16/09/2026'
这将日期格式化为dd/mm/yyyy
. 这是完整的代码片段。
索引.js
function padTo2Digits(num) { return num.toString().padStart(2, '0'); } function formatDate(date) { return [ padTo2Digits(date.getDate()), padTo2Digits(date.getMonth() + 1), date.getFullYear(), ].join('/'); } // 👇️ 24/10/2021 (dd/mm/yyyy) console.log(formatDate(new Date())); // 👇️️ 24/07/2027 (dd/mm/yyyy) console.log(formatDate(new Date(2027, 6, 24)));
此方法可用于以任何其他方式格式化日期。您所要做的就是重新排列数组中的元素并更改分隔符(例如更改为连字符
-
)。