ECMAScript加算演算子
多くのプログラミング言語では、加法演算子(加号または減号)は最も単純な数学演算子です。
ECMAScriptでは、加法演算子には多くの特殊な動作があります。
加法演算子
法演算子は加号(+)で表されます:
var iResult = 1 + 2
乗法演算子と同様に、特殊な値を処理する際には、ECMAScriptの加法にも特殊な動作があります:
- ある演算数がNaNの場合、結果はNaNです。
- -Infinity と -Infinity を足すと、結果は -Infinity になります。
- Infinity と -Infinity を足すと、結果は NaN になります。
- +0と+0を足すと、結果は+0です。
- -0と+0を足すと、結果は+0です。
- -0と-0を足すと、結果は-0です。
ただし、ある演算子が文字列の場合、以下のルールが適用されます:
- 演算子の両方が文字列の場合、2つ目の文字列を1つ目に結合します。
- 演算子の1つが文字列の場合、もう一方の演算子を文字列に変換し、結果は2つの文字列が結合された文字列です。
例えば:
var result = 5 + 5; //数字2つ alert(result); //"10"を出力" var result2 = 5 + "5"; //数字と文字列 alert(result2); //"55"を出力"
このコードは、加法演算子の2つのモードの違いを説明しています。通常、5+5は10(元の値)に等しいですが、上記のコードの最初の2行のように、演算子の1つを文字列"5"に変更すると、結果は"55"(元の文字列の値)に変わります。なぜなら、もう一方の演算子も文字列に変換されるからです。
注意:JavaScriptでよくあるエラーを避けるために、加法演算子を使用する際には、演算数のデータ型を慎重に確認することが重要です。
減法演算子
減法演算子(-)は、よく使われる演算子の1つです:
var iResult = 2 - 1;
加法演算子と同様に、特殊値の処理において、減法演算子も特殊な動作があります:
- ある演算数がNaNの場合、結果はNaNです。
- InfinityからInfinityを引くと、結果はNaNです。
- -Infinityから-Infinityを引くと、結果はNaNです。
- Infinityから-Infinityを引くと、結果はInfinityです。
- -InfinityからInfinityを引くと、結果は-Infinityです。
- +0から+0を引くと、結果は+0です。
- -0から-0を引くと、結果は-0です。
- +0から-0を引くと、結果は+0です。
- ある演算子が数字でない場合、結果はNaNです。
注記:演算数がすべて数字の場合、通常の減法演算を実行し、結果を返します。