2016-11-30 136 views
1

我想要一年的第一个星期日。我可以获取第一天的第一天,并将第一个星期天的剩余天数(例如2016年的2天)添加到现在,并希望通过在2天内增加毫秒来获得新的日期。但我没有得到期望的结果。请帮忙。向毫秒添加毫秒并通过JavaScript获取新日期

<script> 

    //I want to get date for 1st Sunday of Year 
    var year = 2016; 
    var date = new Date(year,0,1); 
    var day = date.getDay(); 

    var dayDifference = ((7 - day)%7); 
    var firstSunday = date.getMilliseconds() + (dayDifference * 86400000); 

    console.log(new Date(firstSunday)); 

</script> 

结果:

星期六1970年1月3日5点30分零零秒GMT + 0530(印度标准时间)

我预计日期是2016年1月3日

+1

尝试'console.log(date.getMilliseconds())'。你正在寻找的是'date.getTime()',或者实际上'date.setDate()',如果你想[做正确的](http://stackoverflow.com/questions/563406/add-days-对JavaScript的日期)。 – JJJ

回答

4

你可以简单的使用方法setDate得到期望的结果。

var year = 2016; 
var date = new Date(year,0,1); 
var day = date.getDay(); 

var dayDifference = ((7 - day)%7); 
date.setDate(date.getDate() + dayDifference) 
2

试试这个

var year = 2016; 
 
var date = new Date(year, 0, 1); 
 
var day = date.getDay(); 
 

 
var dayDifference = ((7 - day) % 7); 
 
var firstSunday = date.getTime() + (dayDifference * 86400000); 
 

 
console.log(new Date(firstSunday));