亚洲国产综合网站|精品国产自在免费观看|日本免费精品一区二区三区|亚洲一区在线日韩在线尤物

<blockquote id="2t14e"></blockquote>
<ul id="2t14e"></ul>
  • <blockquote id="2t14e"></blockquote>

    1. ActionScript3.0教程06:所有運算符的介紹

      時間:2013-07-25 14:40:41 ActionScript 我要投稿

      ActionScript3.0教程06:所有運算符的介紹

      ActionScript3.0教程06:所有運算符的介紹
      運算符是一種特殊的函數,它們具有一個或多個操作數并返回相應的值。
      【PS:溫馨提示:近來天氣炎熱,希望各位同學堅持,送一句名言給大家提提精神:成功意味著持續(xù)不斷的忍耐】

      “操作數”是被運算符用作輸入的值,通常是字面值、變量或表達式。

      例如,在下面的代碼中,將加法運算符
      (+) 和乘法運算符 (*) 與三個字面值操作數(2、3 和 4)結合使用來返回一個值。賦值運算
      符 (=) 隨后使用該值將所返回的值 14 賦給變量 sumNumber。


      var sumNumber:uint = 2 + 3 * 4; // uint = 14
      運算符可以是一元、二元或三元的。 “一元”運算符有 1 個操作數。例如,遞增運算符 (++)
      就是一元運算符,因為它只有一個操作數。 “二元”運算符有 2 個操作數。例如,除法運算
      符 (/) 有 2 個操作數。“三元”運算符有 3 個操作數。例如,條件運算符 (?:) 具有 3 個操
      作數。


      有些運算符是“重載的” ,這意味著它們的行為因傳遞給它們的操作數的類型或數量而異。

       

      例如,加法運算符 (+) 就是一個重載運算符,其行為因操作數的數據類型而異。

       

      如果兩個操作數
      都是數字,則加法運算符會返回這些值的和。如果兩個操作數都是字符串,則加法運算符會
      返回這兩個操作數連接后的結果。下面的示例代碼說明運算符的行為如何因操作數而異:
      trace(5 + 5);     // 10
      trace("5" + "5"); // 55
      運算符的行為還可能因所提供的操作數的數量而異。減法運算符 (-) 既是一元運算符又是二
      元運算符。對于減法運算符,如果只提供一個操作數,則該運算符會對操作數求反并返回結
      果;如果提供兩個操作數,則減法運算符返回這兩個操作數的差。下面的示例說明首先將減
      法運算符用作一元運算符,然后再將其用作二元運算符。
      trace(-3);  // -3
      trace(7-2); // 5

       

       

      運算符的優(yōu)先級和結合律決定了運算符的處理順序。雖然對于熟悉算術的人來說,編譯器先
      處理乘法運算符 (*) 然后再處理加法運算符 (+) 似乎是自然而然的事情,但實際上編譯器要
      求顯式指定先處理哪些運算符。此類指令統(tǒng)稱為“運算符優(yōu)先級” 。ActionScript 定義了一
      個默認的運算符優(yōu)先級,您可以使用小括號運算符 (()) 來改變它。學生范文網出品。例如,

      下面的代碼改變上
      一個示例中的默認優(yōu)先級,以強制編譯器先處理加法運算符,然后再處理乘法運算符:
      var sumNumber:uint = (2 + 3) * 4; // uint == 20
      您可能會遇到這樣的情況:同一個表達式中出現兩個或更多個具有相同的優(yōu)先級的運算符。
      在這些情況下,編譯器使用“結合律”的規(guī)則來確定先處理哪個運算符。除了賦值運算符之
      外,所有二進制運算符都是“左結合”的,也就是說,先處理左邊的運算符,然后再處理右
      邊的運算符。賦值運算符和條件運算符 (?:) 都是 “右結合”的,也就是說,先處理右邊的
      運算符,然后再處理左邊的運算符。
      例如,考慮小于運算符 (<) 和大于運算符 (>),它們具有相同的優(yōu)先級。如果將這兩個運算符
      用于同一個表達式中,那么,由于這兩個運算符都是左結合的,因此先處理左邊的運算符。
      也就是說,以下兩個語句將生成相同的輸出結果:
      trace(3 > 2 < 1);   // false
      trace((3 > 2) < 1); // false
      將首先處理大于運算符,這會生成值 true,因為操作數 3 大于操作數 2。隨后,將值 true
      與操作數 1 一起傳遞給小于運算符。下面的代碼表示此中間狀態(tài):
      trace((true) < 1);
      小于運算符將值 true 轉換為數值 1,然后將該數值與第二個操作數 1 進行比較,這將返回
      值 false (因為值 1 不小于 1) 。
      trace(1 < 1); // false

      您可以用括號運算符來改變默認的左結合律。您可以通過用小括號括起小于運算符及其操作
      數來命令編譯器先處理小于運算符。下面的示例使用與上一個示例相同的`數,但是因為使用
      了小括號運算符,所以生成不同的輸出結果:
      trace(3 > (2 < 1)); // true
      將首先處理小于運算符,這會生成值 false,因為操作數 2 不小于操作數 1。值 false 隨后
      將與操作數 3 一起傳遞給大于運算符。下面的代碼表示此中間狀態(tài):
      trace(3 > (false));
      大于運算符將值 false 轉換為數值 0,然后將該數值與另一個操作數 3 進行比較,這將返回
      true (因為 3 大于 0)。
      trace(3 > 0); // true
      下表按優(yōu)先級遞減的順序列出了 ActionScript 3.0 中的運算符。該表內同一行中的運算符具
      有相同的優(yōu)先級。在該表中,每行運算符都比位于其下方的運算符的優(yōu)先級高。

      組 運算符
      主要 [] {x:y} () f(x) new x.y x[y] <></> @ :: ..
      后綴 x++ x--
      一元 ++x --x + - ~ ! delete typeof void
      乘法 * / %
      加法 + -
      按位移位 << >> >>>
      關系 < > <= >= as in instanceof is
      等于 == != === !==
      按位“與” &
      按位“異或” ^
      按位“或” |
      邏輯“與” &&
      邏輯“或” ||
      條件 ?:
      賦值 = *= /= %= += -= <<= >>= >>>= &= ^= |=
      逗號 ,

      主要運算符
      主要運算符包括那些用來創(chuàng)建 Array 和 Object 字面值、對表達式進行分組、調用函數、實
      例化類實例以及訪問屬性的運算符。 
      下表列出了所有主要運算符,它們具有相同的優(yōu)先級。屬于 E4X 規(guī)范的運算符用 (E4X) 來
      表示。
       
      運算符 執(zhí)行的運算
      [] 初始化數組
      {x:y} 初始化對象
      () 對表達式進行分組
      f(x) 調用函數
      new 調用構造函數
      x.y x[y] 訪問屬性
      <></> 初始化 XMLList 對象 (E4X)
      @ 訪問屬性 (E4X)
      :: 限定名稱 (E4X)
      .. 訪問子級 XML 元素 (E4X)


      后綴運算符
      后綴運算符只有一個操作數,它遞增或遞減該操作數的值。雖然這些運算符是一元運算符,
      但是它們有別于其它一元運算符,被單獨劃歸到了一個類別,因為它們具有更高的優(yōu)先級和
      特殊的行為。在將后綴運算符用作較長表達式的一部分時,會在處理后綴運算符之前返回表
      達式的值。例如,下面的代碼說明如何在遞增值之前返回表達式 xNum++ 的值:
      var xNum:Number = 0;
      trace(xNum++); // 0
      trace(xNum);   // 1
      下表列出了所有的后綴運算符,它們具有相同的優(yōu)先級:
      運算符 執(zhí)行的運算
      ++ 遞增 (后綴)
      -- 遞減 (后綴)

      一元運算符
      一元運算符只有一個操作數。這一組中的遞增運算符 (++) 和遞減運算符 (--) 是“前綴運算
      符”,這意味著它們在表達式中出現在操作數的前面。前綴運算符與它們對應的后綴運算符
      不同,因為遞增或遞減操作是在返回整個表達式的值之前完成的。例如,下面的代碼說明如
      何在遞增值之后返回表達式 ++xNum 的值:
      var xNum:Number = 0;
      trace(++xNum); // 1
      trace(xNum);   // 1
      下表列出了所有的一元運算符,它們具有相同的優(yōu)先級:
      運算符 執(zhí)行的運算
      ++ 遞增 (前綴)
      -- 遞減 (前綴)
      + 一元 +
      - 一元 - (非)
      ! 邏輯 “非”
      ~ 按位 “非”
      delete 刪除屬性
      typeof 返回類型信息
      void 返回 undefined 值


      乘法運算符
      乘法運算符具有兩個操作數,它執(zhí)行乘、除或求模計算。
      下表列出了所有的乘法運算符,它們具有相同的優(yōu)先級:
      運算符 執(zhí)行的運算
      * 乘法
      / 除法
      % 求模

      加法運算符
      加法運算符有兩個操作數,它執(zhí)行加法或減法計算。下表列出了所有加法運算符,它們具有
      相同的優(yōu)先級:
      按位移位運算符
      按位移位運算符有兩個操作數,它將第一個操作數的各位按第二個操作數指定的長度移位。
      下表列出了所有按位移位運算符,它們具有相同的優(yōu)先級:
      運算符 執(zhí)行的運算
      + 加法
      - 減法
      運算符 執(zhí)行的運算
      << 按位向左移位
      >> 按位向右移位
      >>> 按位無符號向右移位

      關系運算符
      關系運算符有兩個操作數,它比較兩個操作數的值,然后返回一個布爾值。下表列出了所有
      關系運算符,它們具有相同的優(yōu)先級:
      運算符 執(zhí)行的運算
      < 小于
      > 大于
      <= 小于或等于
      >= 大于或等于
      as 檢查數據類型
      in 檢查對象屬性
      instanceof 檢查原型鏈
      is 檢查數據類型


      等于運算符
      等于運算符有兩個操作數,它比較兩個操作數的值,然后返回一個布爾值。下表列出了所有
      等于運算符,它們具有相同的優(yōu)先級:
      按位邏輯運算符
      按位邏輯運算符有兩個操作數,它執(zhí)行位級別的邏輯運算。按位邏輯運算符具有不同的優(yōu)先
      級;下表按優(yōu)先級遞減的順序列出了按位邏輯運算符:
      運算符 執(zhí)行的運算
      == 等于
      != 不等于
      === 嚴格等于
      !== 嚴格不等于
      運算符 執(zhí)行的運算
      & 按位 “與”
      ^ 按位 “異或”
      | 按位 “或”


      按位邏輯運算符
      按位邏輯運算符有兩個操作數,它執(zhí)行位級別的邏輯運算。按位邏輯運算符具有不同的優(yōu)先
      級;下表按優(yōu)先級遞減的順序列出了按位邏輯運算符:
      邏輯運算符
      邏輯運算符有兩個操作數,它返回布爾結果。邏輯運算符具有不同的優(yōu)先級;下表按優(yōu)先級
      遞減的順序列出了邏輯運算符:
      運算符 執(zhí)行的運算
      & 按位 “與”
      ^ 按位 “異或”
      | 按位 “或”
      運算符 執(zhí)行的運算
      && 邏輯 “與”
      || 邏輯 “或”

      條件運算符
      條件運算符是一個三元運算符,也就是說它有三個操作數。條件運算符是應用 if..else 條
      件語句的一種簡便方法。
      運算符 執(zhí)行的運算
      ?: 條件
      賦值運算符
      賦值運算符有兩個操作數,它根據一個操作數的值對另一個操作數進行賦值。下表列出了所
      有賦值運算符,它們具有相同的優(yōu)先級:
      運算符 執(zhí)行的運算
      = 賦值
      *= 乘法賦值
      /= 除法賦值
      %= 求模賦值
      += 加法賦值
      -= 減法賦值
      <<= 按位向左移位賦值
      >>= 按位向右移位賦值
      >>>= 按位無符號向右移位賦值
      &= 按位 “與”賦值
      ^= 按位 “異或”賦值
      |= 按位 “或”賦值

      【ActionScript3.0教程06:所有運算符的介紹】相關文章:

      1.ActionScript3.0教程05:所有語法介紹「超完整」

      2.★Flash ActionScript3.0運算符

      3.Actionscript3.0教程09:函數的使用介紹

      4.ActionScript3.0自學教程

      5.ActionScript3.0基礎教程

      6.ActionScript3.0實用教程

      7.Flash ActionScript3.0高級教程全集

      8.Flash ActionScript3.0快速入門教程