OK 그래서 예를 들어, 오늘은 화요일, 2월 02 인이었다?작년 같은 요일에 대한 날짜를 찾으십니까? 그런데 작년에 해당하는 "<strong>화요일</strong>는"</p> <p>는 어떻게 프로그래밍 방식을 찾을 수 있습니다 2월 03에
감사합니다.
OK 그래서 예를 들어, 오늘은 화요일, 2월 02 인이었다?작년 같은 요일에 대한 날짜를 찾으십니까? 그런데 작년에 해당하는 "<strong>화요일</strong>는"</p> <p>는 어떻게 프로그래밍 방식을 찾을 수 있습니다 2월 03에
감사합니다.
그냥 내 두 센트. 두 번째 대답은 일년에 52 주를 가정하고, 1 년 동안은 효과가 있지만,이 정확한 문제에 대한 해결책입니다 (예 : 아이디어가 마음에 들지 않습니다. 똑같은 것을 10 년 동안 되돌아 가려고했는지 확인하고 싶다면 작동하지 않을 것입니다. 나는 이런 식으로 할 거라고 :
var today:Date = new Date();
// Here we store the day of the week
var currentDay:int = today.day;
trace (today);
const milisecondsInADay:uint = 1000*60*60*24;
// Here we move back a year, but we can just as well move back 10 years
// or 2 months
today.fullYear -= 1;
// Find the closest date that is the same day of the week as current day
today.time -= milisecondsInADay*(today.day-currentDay);
trace (today);
반환 :
이Tue Feb 2 21:13:18 GMT+0100 2010
Tue Feb 3 21:13:18 GMT+0100 2009
당신이 말하려고한다면, 당신은 윤초를 고려하고 싶을 것입니다. – Timmy
죄송합니다! 나는 당신이 의미하는 바를 이해하지 못한다고 생각합니다. 52 주는 364 일입니다. 즉, 실제로하는 일은 하루나 이틀 전으로 날짜를 옮기는 것입니다. 여기에서는 실제로 actionscript 날짜 클래스를 사용하여 뒤로 이동하고 그것이 제공 한 날짜를 둘러 봅니다. –
귀하의 답변은 광산이나 Stiggler 's보다 깨끗한 것으로 보입니다. 실제로, 나는 나의 대답이 실제로 원래 질문에 대답하지 않는다는 것을 깨달았습니다 ... – Dan
Google에 따르면 1 주일에 604,800,000 밀리 초가 있습니다. 그 시간 52는 일년 후 같은 요일에 당신에게 줄 것입니다 (맞습니까?). 예를 들어
:
var date:Date = new Date(2010, 1, 2);
trace(date);
date.setMilliseconds(date.milliseconds - 604800000 * 52);
trace(date);
출력 :
Tue Feb 2 00:00:00 GMT-0800 2010
Tue Feb 3 00:00:00 GMT-0800 2009
1 년이 아닌 604 800 000ms를 말할 수 있다고 생각합니다. – Dan
Yikes, 단순한 오타 사람들이었습니다. 나는 분명히 주를 의미했다. – Stiggler
downvote에 대한 오타가 부족합니다. – invertedSpear
당신은 "해당 화요일는"무엇을 정의해야 할 수 있습니다, 그것은 가장 가까운 화요일 년 2 월 2? 그 둘이 화요일 첫 번째 화요일입니까? 또는 올해의 다섯 번째 화요일? 이들에 대한 답변은 대개 동일 할 수도 있지만 모든 경우에 해당하지는 않습니다. – invertedSpear
1 년 전에 같은 요일을 찾으려면 주어진 날짜로부터 52 주 또는 364 일을 빼면됩니다. http://stackoverflow.com/a/41776747/3817004를 참조하십시오. – Uwe