从固定日期的下周五找到

Bra*_*ild 2 javascript momentjs

我想知道从给定日期开始的下一个日期.我正在使用时刻js,下面是我的代码.

var startDate = moment("10/1/2014");
var nf = startDate.day("Friday");

alert(startDate);
alert(nf);
Run Code Online (Sandbox Code Playgroud)

代码将在下周五返回,但上面的代码也将原始对象(startDate)也改为下周五.返回的对象是一个复杂的对象,不确定要使用哪个属性.

使用完整代码更新问题.

var startDate = moment("10/1/2014");
var endDate = moment( '10/31/2014');

var diff = endDate.diff(startDate,'days');

var noOfWeeks = diff / 7;

var nextStartday = startDate;
var nextFriday = moment( startDate).day("Friday");

for (var j = 0; j < noOfWeeks ; j++) {
    newRow.PlStartDateandTime = nextStartday;
    newRow.PlEndDateandTime = nextFriday;

    nextStartday = moment( nextFriday).day("Monday");
    nextFriday = moment( nextStartday).day("Friday");
}
Run Code Online (Sandbox Code Playgroud)

我的期望是在给定的时间范围之间找到工作日.

Par*_*ker 6

尝试:

var startDate = moment("10/1/2014");
var nf = moment("10/1/2014").day("Friday");

alert(startDate);
alert(nf);
Run Code Online (Sandbox Code Playgroud)

你也可以(如你所知) var nf = moment(startDate).day("Friday");

您正在设置正在更改它的startDate的日期,如果您希望能够具有两个不同的值,则需要创建单独的对象.

如果您diff给出了错误的答案,那是因为您在更改日期之前设置了它.它不会为您动态更新,您需要重新分配其值