你可以使用 String.prototype.padStart()
方法来实现日不足两位时补充零,这样代码更简洁。padStart()
会在字符串的前面填充指定的字符,直到字符串达到给定的长度。对于你的需求,padStart(2, '0')
会将 day
补充成两位数(如果 day
是单数的话)。
这是优化后的代码,使用了 padStart()
:
function getMonthAndDay(inputTime) {
const inputDate = new Date(inputTime);
const month = inputDate.getMonth() + 1; // 获取月份,注意月份从0开始,所以加1
const day = inputDate.getDate().toString().padStart(2, '0'); // 使用 padStart 补充零
return {
month,
day,
};
}
说明:
inputDate.getDate()
获取日期,然后使用toString()
将其转换为字符串。padStart(2, '0')
会确保如果day
是一位数,它会在前面补充一个'0'
,使其变成两位数。
这样你就能够确保返回的 day
总是两位数,而 month
不会做任何补零操作。