在Javascript上获取前一天

时间:2017-05-03 21:33:49

标签: javascript date

我想在Date之前得到一个月的日子,这就是我所拥有的

var date =  new Date();
var day = date.getDay();
var month = date.getMonth() + 1;
var year = date.getFullYear();

var yesterday = new Date(date.getTime());
yesterday.setDate(date.getDate() - 3);
var dayBefore = yesterday.getDay();
var MonthBefore = yesterday.getMonth() + 1;

在昨天的日志中我得到了

 Sun Apr 30 2017 16:24:33 GMT-0500

昨天不是真的,因为我试图在当月之前获得一天,但是我得到了上个月,现在当我想要获得该日期的日期和月份时,我使用getDate()和getMonth( ),我用

正确地得到月份
 MonthBefore = yesterday.getMonth() + 1;

这给了我4(4月),但是在第(30)天我使用

得到0
dayBefore = yesterday.getDay();

这是jsfiddle:https://jsfiddle.net/4pf7bczv/

1 个答案:

答案 0 :(得分:3)

getDay返回星期几。 getDate返回月中的某一天。

试试这个:

var date = new Date();
var day = date.getDate();
var month = date.getMonth() + 1;
var year = date.getFullYear();

var yesterday = new Date(date.getTime());
yesterday.setDate(date.getDate() - 3);
var dayBefore = yesterday.getDate();
var MonthBefore = yesterday.getMonth() + 1;


console.log(date)
console.log(yesterday)
console.log(month + '/' + day + '/' + year + " 11:59 pm")
console.log(MonthBefore + '/' + dayBefore + '/' + year + " 12:00 am")

console.log(yesterday.getDate());

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date