如何在JavaScript中实现日期按dd/mm/yyyy格式正确显示?
问题根因
Date.setDate() 方法的返回值是修改后日期对应的毫秒时间戳,而非日期中的“日”数值,你直接把这个返回值赋值给了day变量才会输出毫秒数。
修复代码
基础可用版本
var oneweekago = new Date(); // 先修改日期为7天前 oneweekago.setDate(oneweekago.getDate() - 7); // 再分别获取日、月、年数值 var month = oneweekago.getMonth() + 1; var day = oneweekago.getDate(); var year = oneweekago.getFullYear(); document.write(day + "/" + month + "/" + year);
补零优化版本(严格符合dd/mm/yyyy格式,单数字的月/日自动补前导0)
var oneweekago = new Date(); oneweekago.setDate(oneweekago.getDate() - 7); var month = String(oneweekago.getMonth() + 1).padStart(2, '0'); var day = String(oneweekago.getDate()).padStart(2, '0'); var year = oneweekago.getFullYear(); document.write(`${day}/${month}/${year}`);
内容的提问来源于stack exchange,提问作者HappyGilmore
相关产品推荐
相关产品推荐

