AE表達式教程
第一章 – 表達式的語言
1.4 if/else 條件語句
if/else條件函數(shù)
當我們編寫表達式的時候,我們經(jīng)常會遇到根據(jù)一些條件判斷情況的需求。我們看一個簡單的例子,比如我們有一個旋轉(zhuǎn)的表針,我們希望當這個表針指向右邊的時候,它的透明度是100%的;指向左邊的時候,它的透明度是50%。這里我們假設(shè)當旋轉(zhuǎn)至0度的時候它是指向上方的,這個表達式我們就可以使用JS的if/else條件語句來完成,這個表達式如下:
if (rotation < 180) 100 else 50
咱們分析一下這個表達式:“if”大家都應該知道這個英文單詞的意思,“if”也是JS語言中條件函數(shù)的聲明,緊跟著括號里面就是條件,在我們這句表達式中就是(rotation < 180) ,它的意思是把if函數(shù)的條件設(shè)置為旋轉(zhuǎn)小于180。接下來的100告訴表達式,當旋轉(zhuǎn)小于180的時候透明度為100,接著我們寫了一個 else 50, 意思就是如果旋轉(zhuǎn)大于180的時候,透明度是50。
這個表達式還有很多書寫的方式,我來給大家展示幾種方式,有很多簡化的寫法我們甚至可以省略else。
t = 50;
if (rotation < 180) t = 100;
t
有一點需要注意一下,如下的這種寫法是有問題的:
if (rotation < 180) 100
這種寫法會報錯,因為AE不知道當Rotation大于180的結(jié)果,AE會自動屏蔽這個表達式。
好,下面我們在看另一個稍微復雜一點的版本:
if (rotation < 180){
100
}else{
50
}
這也是一種寫法,得到的結(jié)果是一樣的,但是我們?yōu)槭裁匆獙懙倪@么復雜呢?對于這種就一行的表達式我們可以盡量簡單的寫,大家注意一下這種寫法里面的大括號“{}”,因為利用這種嵌套的方式我們可以寫出更加復雜的表達式,甚至在{}之間我們還可以添加if/else條件語句,在后面的章節(jié)中我會給大家展示更多復雜的嵌套方式。
對比及等于運算符:
到這里我覺得有必要介紹一下JS里面的對比符。剛剛我們用過的“<”,小于號,相反我們有“>”,大于號。“>=”,”<=”,大于等于以及小于等于。還有兩個是不等于”!=”以及等于“==”。
這里提個醒”=”和“==”的區(qū)別,第一個符號式給變量賦予值,第二個才是等于號。
邏輯運算:
接下來我們需要記住的是邏輯運算符,一共有三個:
“&&”這個符號為和,就是要同時滿足兩個條件;“||”為或者,就是滿足任何一種條件;“!”為不,就是當不等于這個條件的時候,。
例如:if (rotation<90 || rotation>270) 100 else 50,這句表達式的意思就是當旋轉(zhuǎn)小于90或者大于270的時候透明的值設(shè)置為100,否則是50。
又如:if (! (rotation==180)) 100 else 50,這里的意思是當旋轉(zhuǎn)不等于180的時候?qū)⑼该鞫仍O(shè)置為100,否則為50,大家可以先不看下面的視頻,然后想想是什么樣子的。
好,我們再看一個更加復雜的寫法,假設(shè)我們希望當旋轉(zhuǎn)在0至90之間或者180至270的時候,透明度為100,其它的情況透明度為50。
最后大家需要注意一下,運算符計算優(yōu)先于邏輯符號,邏輯符號的&&優(yōu)先于||,大家注意不要添加過多的括號。
截止到這里,我們完成了第一部分的對于表達式基礎(chǔ)的介紹,主要為大家介紹了一下JS的函數(shù)和語法,但是都比較基礎(chǔ)。如果大家對這門語言有更多的興趣,大家可以登錄這個網(wǎng)址
www.w3school.com.cn 這個網(wǎng)站的JS專區(qū)有非常詳細的JS語言介紹。
下一篇推送我將開始為大家介紹一些仿真運算,我們下期再見。
*CGahz.COM 收集整理,轉(zhuǎn)載請注明來自CG愛好者網(wǎng)(www.www17488.com)