2013-10-21 130 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,如果你使用的是Date對象? – 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