0

我有一个天气图模板。我希望月亮图标在某些日期自动更改为满月。

所以我需要表达式来检查今天的日期是否是某个数组或列表的一部分,或者它是如何被调用的。

所以我做了一个文本层,显示当前日期

D = new Date(Date(0));
D.getDate() + "/" + (D.getMonth()+1) + "/" + D.getFullYear()

我将此表达式应用于满月图标的不透明度

d = thisComp.layer("theDateLayer").text.sourceText;
vis = transform.opacity;
year = 2013;
fullM = ["27/3","25/4","25/5","23/6","22/7","21/8","19/9","19/10","17/11","17/12"];

if (d == fullM"/year")
vis = 100
else
vis = 0;

但它不起作用。我猜是因为日期必须与整个数组相同。我需要写下我只需要其中的任何项目。如何?

谢谢

4

1 回答 1

0

你想用这个语句来完成d == fullM"/year"什么?我想你可能正在尝试做这样的事情:

d = thisComp.layer("asdf").text.sourceText;
year = "2013";
fullM = ["27/3","25/4","25/5","23/6","22/7","21/8","19/9","19/10","17/11","17/12"];


for(var i = 0; i < fullM.length; i++) {
    if(d == fullM[i] +"/"+ year) {
        100;
        break;
    } else {
        0;
        break;
    }
}

...假设该sourceText层的 是一个等效的字符串。我的代码使用 for 循环遍历 fullM 数组。您应该阅读JavaScript for loops

于 2013-01-12T07:53:18.120 回答