2013-10-21 6 views
1

소스 텍스트에서 요일을 표시하는 간단한 AE 스크립트를 수정하려고합니다. 나는 내일과 그 다음날을 보여줄 필요가있다 - 나는 +1과 +2를 사용함으로써 할 수있다 - 그러나 조건없이 그것은 깨진다. 나는 그것이 라인을 따라 있다고 생각합니다. d> 6이면 d = 0입니까? 코드를 제대로 작성할 수 없기 때문에 도움을받을 수 있습니다.After Effects 스크립트 - 요일

d = new Date(Date(0)); 
var weekday=new Array(7); 
weekday[0]="Sunday"; 
weekday[1]="Monday"; 
weekday[2]="Tuesday"; 
weekday[3]="Wednesday"; 
weekday[4]="Thursday"; 
weekday[5]="Friday"; 
weekday[6]="Saturday"; 

weekday[d.getDay()] 
+0

당신이 날짜 개체를 사용하는 경우 어떻게 6보다 클 거라고 할 수 있습니까? – fabianmoronzirfas

답변

0

[편집 : 정말 미안, @ndix하지만, 이전 코드 (삭제)를 완전히 결함이있다. 네거티브는 작동하지 않습니다. 사용]

timeDirectionIndex = 0;//initial for today or future 
daysToAdd = -15;//you can make this zero or any positive or negative integer 
d = new Date(Date(0)); 
var weekday=new Array(7); 
if (daysToAdd < 0) {timeDirectionIndex = 1;} 

//if time is reversed, uses second column 

weekday[0]=["Sunday","Saturday"][timeDirectionIndex]; 
weekday[1]=["Monday","Friday"][timeDirectionIndex]; 
weekday[2]=["Tuesday","Thursday"][timeDirectionIndex]; 
weekday[3]=["Wednesday","Wednesday"][timeDirectionIndex]; 
weekday[4]=["Thursday","Tuesday"][timeDirectionIndex]; 
weekday[5]=["Friday","Monday"][timeDirectionIndex]; 
weekday[6]=["Saturday","Sunday"][timeDirectionIndex]; 

//Math.abs makes it always positive; we rely on order of array now 
if (daysToAdd < 0) { 
    wd=weekday[ (Math.abs(daysToAdd) + 3 + (3 - d.getDay()) )%7 ]; 
} else { 
    wd=weekday[ (Math.abs(daysToAdd) + ( d.getDay() ))%7 ]; 
} 

alert(wd); 

아래의 코드는 [이전 코드는 작동하지 않았다 ]

+0

답변 해 주셔서 감사합니다. 이것은 완벽하게 작동합니다 (이 함수가 정의되지 않았으므로 마지막 줄에서 경고를 제거해야했습니다). 도와 주셔서 감사합니다. – ndlx

+0

당신이 좋아하는 것을 기쁘게 생각합니다. alert()은 기본 JavaScript 메서드이며 ExtendScript API에서 지원됩니다. 테스트 목적으로 작동하는지 보여줄 수 있습니다. – CRGreen

+0

이전의 '솔루션'은 해결책이 아니었던 @ndix에 유의하십시오. 미래의 날짜를 처리하고 오래된 코드와 네거티브를 사용하지 않으려면 이것을 사용하십시오! – CRGreen