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