아래의 getDay 함수는 액션스크립트로 구성된 요일을 계산해 반환하는 함수입니다. 이 getDay 함수의 파라메터는 날짜로써 년(예:2012), 월(1 ~ 12), 일(1 ~ 31)입니다.
private function getDay(year:int, month:int, day:int):String { const dayStrings:Object = { 0:"일요일", 1:"월요일", 2:"화요일", 3:"수요일", 4:"목요일", 5:"금요일", 6:"토요일" }; if (month == 1 || month == 2) year--; month = (month + 9) % 12 + 1; var y:int = year % 100; var century:int = year / 100; var week:int = ((13 * month - 1) / 5 + day + y + y / 4 + century / 4 - 2 * century) % 7; if (week < 0) week = (week + 7) % 7; return dayStrings[week]; }
이처럼 날짜로부터 요일을 계산하는 함수를 직접 작성해 사용할 수 있지만 다음처럼 액션스크립트에서 이미 제공하고 있는 Date 클래스를 사용해 보다 간단히 요일을 계산할 수 있습니다.
const dayStrings:Object = { 0:"일요일", 1:"월요일", 2:"화요일", 3:"수요일", 4:"목요일", 5:"금요일", 6:"토요일" }; var d:Date = new Date(2012, 10-1, 4); Alert.show(dayStrings[d.day]);
여기서 주의해야할 점은 월(Month)은 1부터 시작하지 않고 0부터 시작한다는 것입니다. 그래서 11번 코드에서 지정한 (10-1)은 9월이 아니라 10월을 의미합니다.