函数返回我前一天



你能帮我解决这个问题吗?我尝试制作一个函数,该函数接收类型为Date的参数,例如20年11月12日。我希望它能在前一天归还。

function getPreviousDay(d) {
var dateObj = new Date(d);
var previousDay = dateObj.setDate(dateObj.getDate() - 1);
return previousDay;
}
console.log(getPreviousDay(new Date())); //1606809601830

但正如您所看到的,函数返回:1606809601830,我不知道为什么。谢谢你们,伙计们!

一个简单的ES6一行应该是:

const getPreviousDay = d => d.setDate(d.getDate() - 1) && d
console.log(getPreviousDay(new Date()));

此函数更改传递的Date对象的日期并返回。无需创建中间对象。

Typescript版本(带有类型检查,以确保始终向其传递Date对象,而不是字符串(:

const getPreviousDay = (d:Date): Date => d.setDate(d.getDate() - 1) && d

您不想返回以毫秒为单位的Date.prototype.setDate()的结果,您想返回变异的dateObj

function getPreviousDay(d) {
var dateObj = new Date(d);
dateObj.setDate(dateObj.getDate() - 1);
return dateObj ;
}
console.log(getPreviousDay(new Date()));

此代码像昨天(2020年12月12日(这样返回。

function getPreviousDay(d) {
var dateObj = new Date(d);
dateObj.setDate(dateObj.getDate()-1);
return dateObj.getDate() + '.' + (dateObj.getMonth()+1) + '.' + dateObj.getFullYear();
}
console.log(getPreviousDay(new Date()));

相关内容

  • 没有找到相关文章

最新更新