怎样获取前七天的日期

比如说从今天算,怎样获取前七天的日期

阅读 25.1k
7 个回答

方法一: 用setDate();

function getDate(index){
    var date = new Date(); //当前日期
    var newDate = new Date();
    newDate.setDate(date.getDate() + index);//官方文档上虽然说setDate参数是1-31,其实是可以设置负数的
    var time = newDate.getFullYear()+"-"+(newDate.getMonth()+1)+"-"+newDate.getDate();
    return time;
}
console.log(getDate(7));
console.log(getDate(-7));

方法二: 时间戳进行转换

var date= new Date();
var newDate = new Date(date.getTime() - 7*24*60*60*1000);
var time = newDate.getFullYear()+"-"+(newDate.getMonth()+1)+"-"+newDate.getDate();
conosole.log(time);

可以把当前的时间转换为毫秒数减去七天的毫秒数再转换回来...

var today = new Date();

// 获取前七天的日期
var date1 = new Date(today.getTime() - (0 * 24 * 60 * 60 * 1000));
var date2 = new Date(today.getTime() - (1 * 24 * 60 * 60 * 1000));
var date3 = new Date(today.getTime() - (2 * 24 * 60 * 60 * 1000));
var date4 = new Date(today.getTime() - (3 * 24 * 60 * 60 * 1000));
var date5 = new Date(today.getTime() - (4 * 24 * 60 * 60 * 1000));
var date6 = new Date(today.getTime() - (5 * 24 * 60 * 60 * 1000));
var date7 = new Date(today.getTime() - (6 * 24 * 60 * 60 * 1000));

// 获取某天的年,月,日
var day = date1.getDate();
var month = date1.getMonth() + 1;
var year = date1.getFullYear();

<script>

var dayBefore=new Date().getTime()-24*60*60*7*1000;;
var result=new Date(dayBefore).getDate();
console.log(result);

</script>

推荐问题