2013-01-22 3 views
1

나는 Actionscript 3에서이 작업을 수행하려고 최선을 다하고 있지만 단순히 내 머리를 감쌀 수 없습니다. 오늘 날짜까지 설정 한 날짜 이후로 얼마나 많은 월요일이지나 갔는지 계산해야합니다. 그것을 3.5로 곱하고 그것을 x에서 공제하십시오. 그런 다음 얼마나 많은 화제가 통과했는지 계산하고 7을 곱하여 x에서 빼십시오. 마지막으로 얼마나 많은 수요일이 경과했는지 계산하고, 7을 곱한 다음 x에서 빼냅니다.actionscript에서 날짜와 요일 계산 3

이렇게하면 다른 계산을 할 때 x의 정확한 값을 가질 수 있습니다. IOW는 얼마나 많은 프로젝트 일이 경과했는지에 따라 사용 가능한 남은 시간표입니다.

그런 다음 사용자가 x의 나머지 값에 대해 시간 구간을 예약 할 수있게하려고합니다.

지금까지 나는 AS3에있는 요일을 얻을 수 있습니다 :

var dayOfWeek_array:Array = new Array("Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"); 
    var today_date:Date = new Date(); 
    var day_str:String = dayOfWeek_array[today_date.getDay()]; 
    trace("Today is "+day_str); 

내가 여기 내 깊이에서 조금 생각합니다. 조언이나 도움이 있으면 크게 환영합니다. 내가 당신을 잘 이해한다면

답변

1

:

public function astest() 
{ 
    var days_count:Object = getDaysCounter(new Date(1984, 6, 6), new Date()); 

    trace("mondays:", days_count[1]); 
    trace("tuesdays:", days_count[2]); 
    trace("wednesdays:", days_count[3]); 
} 

private function getDaysCounter(from:Date, to:Date):Object 
{ 
    //map of the day counter days_count[day] = count; 
    var days_count:Object = {}; 

    //number of millisecons in one 24h day 
    var day_ms:int = 24*60*60*1000; 

    //the number of 24h day passed since "from" date 
    var days_passed:int = (to.time - from.time)/day_ms; 

    var iter_date:Date = from; 
    //number of full weeks since "from" date 
    var full_weeks:int = days_passed/7; 

    for(var d:int = 0; d < 7; d++) 
     days_count[d] = full_weeks; 

    var last_day:int = from.day; 
    var extra_days:int = days_passed%7 + last_day; 
    for(var i:int=last_day; i < extra_days; i++) 
    { 
     //add 1 day to the current time 
     iter_date.time += day_ms; 
     days_count[iter_date.day]++; 
    } 

    return days_count; 
} 

이 코드가 오늘 내일까지이 결과에 포함되지 않습니다 화요일 경우이며, 현재 날짜 계산하지 않습니다 만 전체 24 시간 일 통과 계산합니다.

+0

안녕하세요, @fsbmain 매우 빠른 응답에 감사드립니다. 이것은 옳은 것처럼 보입니다. 나는 그것에게 가고, 내가 어떻게에 관해 알 수 있는지에 관해 알 것이다. 미리 감사드립니다. – user2000293

관련 문제