Flash Lite 2 |
|||
| Flash Lite 2.x ActionScript リファレンスガイド > ActionScript 言語エレメント > 演算子 > || 論理和 (OR) 演算子 | |||
expression1 || expression2
expression1 (演算子の左側の式) を評価し、式の評価が true の場合は、true を返します。expression1 の評価が false であれば、expression2 (演算子の右側の式) が評価されます。expression2 の評価が false であれば、最終結果は false です。それ以外の場合は true です。
expression1 の評価が true の場合、expression2 に関数呼び出しが指定されていても、その関数は実行されません。
いずれかまたは両方の式の評価が true の場合は、結果が true になります。両方の式の評価が false の場合にのみ、結果が false になります。論理和 (OR) 演算子は任意の数のオペランドに適用できます。いずれかのオペランドの評価が true であれば、結果は true です。
使用できるバージョン : ActionScript 1.0、Flash Lite 1.0
expression1 : Number - ブール値、またはブール値に変換される式。
expression2 : Number - ブール値、またはブール値に変換される式。
Boolean - 論理演算の結果。
次の例では、if ステートメントで論理和 (||) 演算子を使用しています。2 番目の式の評価は true であるため、最終結果は true です。
var x: Number = 10;
var y: Number = 250;
var start: Boolean = false;
if ((x > 25) || (y > 200) || (start)) {
trace("the logical OR test passed"); // the logical OR test passed を出力する
}
if ステートメントの条件の 1 つが true (y>200) なので、"the logical OR test passed" というメッセージが表示されます。それ以外の 2 つの式が false と評価されても、true と評価される条件が 1 つでもあれば、if ブロックが実行されます。
次のように、expression2 に関数呼び出しを指定すると、予期しない結果が生じる場合があります。演算子の左側の式が true に評価された場合、右側の式は評価されずに (関数 fx2() は呼び出されません)、左側の式の結果だけが返されます。
function fx1(): Boolean {
trace("fx1 called");
return true;
}
function fx2(): Boolean {
trace("fx2 called");
return true;
}
if (fx1() || fx2()) {
trace("IF statement entered");
}
/* The following is sent to the Output panel: /* The following is sent to the log file: fx1 called IF statement entered */
! 論理否定 (NOT) 演算子, != 不等価演算子, !== 厳密な不等価演算子, && 論理積 (AND) 演算子, == 等価演算子, === 厳密な等価演算子