나는 현재 날짜 시간을 나타내는 ISO 날짜 시간 문자열을 가지고있다 : 2016-07-26T11:56:59.792Z
. 이번 주에 [시작일, 종료일>]을 어떻게 얻습니까?JS의 주중 중순에서 임의의 날짜 시간이 지정된 요일의 시작과 끝을 얻는 방법은 무엇입니까?
시작 : 2016-07-25T00:00:00.000Z
끝 : 2016-07-32T00:00:00.000Z
나는 현재 날짜 시간을 나타내는 ISO 날짜 시간 문자열을 가지고있다 : 2016-07-26T11:56:59.792Z
. 이번 주에 [시작일, 종료일>]을 어떻게 얻습니까?JS의 주중 중순에서 임의의 날짜 시간이 지정된 요일의 시작과 끝을 얻는 방법은 무엇입니까?
시작 : 2016-07-25T00:00:00.000Z
끝 : 2016-07-32T00:00:00.000Z
당신은 대답 here 및 here에 주어진 기능을 사용할 수 있습니다.
var year = 2016;
var week = 31;
document.write("first day: " + getDateOfISOWeek(week, year) + "<br>");
function getWeekNumber(d) {
// Copy date so don't modify original
d = new Date(+d);
d.setHours(0,0,0);
// Set to nearest Thursday: current date + 4 - current day number
// Make Sunday's day number 7
d.setDate(d.getDate() + 4 - (d.getDay()||7));
// Get first day of year
var yearStart = new Date(d.getFullYear(),0,1);
// Calculate full weeks to nearest Thursday
var weekNo = Math.ceil((((d - yearStart)/86400000) + 1)/7);
// Return array of year and week number
return [d.getFullYear(), weekNo];
}
function getDateOfISOWeek(w, y) {
var simple = new Date(y, 0, 1 + (w - 1) * 7);
var dow = simple.getDay();
var ISOweekStart = simple;
if (dow <= 4)
ISOweekStart.setDate(simple.getDate() - simple.getDay() + 1);
else
ISOweekStart.setDate(simple.getDate() + 8 - simple.getDay());
return ISOweekStart;
}
이 방법을 시도해보십시오.
var utcToday = '2016-07-26T11:56:59.792Z';
var start = startDate('2016-07-26T11:56:59.792Z');
console.log(start);
var end = endDate('2016-07-26T11:56:59.792Z');
console.log(end);
function startDate(dat){
var date = new Date(dat);
var index = date.getUTCDay();
date.setUTCDate(date.getUTCDate()-(index-1));
date.setUTCHours('12');
date.setUTCMinutes('00');
date.setUTCSeconds('00');
date.setMilliseconds('000');
return date;
}
function endDate(dat){
var date = new Date(dat);
var index = date.getUTCDay();
date.setUTCDate(date.getUTCDate()+(7-(index-1)));
date.setUTCHours('12');
date.setUTCMinutes('00');
date.setUTCSeconds('00');
date.setMilliseconds('000');
return date;
}
나는 http://www.datejs.com/ – Bolza
당신이 시도 무엇을 사용해야합니까? 질문은 현재 사람들이 당신을 위해 당신의 문제를 해결하기를 원하는 것처럼 들린다. 당신이 시도한 것을 보여 주면, 우리는 당신을 더 잘 안내 할 수있을 것입니다! – codeling