べき乗演算子(**)べき乗演算子と同じ動作をするMath.powメソッドがあります。assignment)論理演算子AND演算子(&&)真偽値への暗黙的な型変換では、次に挙げる値はfalseへ変換されます。べき乗演算子(**)べき乗演算子と同じ動作をするMath.powメソッドがあります。assignment)論理演算子AND演算子(&&)真偽値への暗黙的な型変換では、次に挙げる値はfalseへ変換されます。演算子はよく利用する演算処理を記号などで表現したものです。これ以外にも演算子には多くの種類があります。演算子は演算する対象を持ちます。この演算子の対象のことを被演算子(オペランド)と呼びます。次のコードでは、+演算子が値同士を足し算する加算演算を行っています。このとき、+演算子の対象となっている1と2という2つの値がオペランドです。2;このコードでは+演算子に対して、前後に合計2つのオペランドがあります。このように、2つのオペランドを取る演算子を二項演算子と呼びます。右オペランドまた、1つの演算子に対して1つのオペランドだけを取るものもあります。数値をインクリメントする++演算子は、次のように前後どちらか一方にオペランドを置きます。++num;このように、1つのオペランドを取る演算子を単項演算子と呼びます。単項演算子と二項演算子で同じ記号を使うことがあるため、呼び方を変えています。この章では、演算子ごとにそれぞれの処理について学んでいきます。演算子の中でも比較演算子は、JavaScriptでも特に挙動が理解しにくい暗黙的な型変換という問題と密接な関係があります。そのため、演算子をひととおり見た後に、暗黙的な型変換と明示的な型変換について学んでいきます。演算子の種類は多いため、すべての演算子の動作をここで覚える必要はありません。必要となったタイミングで、改めてその演算子の動作を見るのがよいでしょう。16べき乗演算子と同じ動作をするMath.powメソッドがあります。1数値以外も数値へと変換します。-1単項マイナス演算子はマイナスの数値を反転できます。NaNインクリメント演算子(++)インクリメント演算子(++)は、オペランドの数値を+1する演算子です。オペランドの前後どちらかにインクリメント演算子を置くことで、オペランドに対して値を+1した値を返します。1;デクリメント演算子は、インクリメント演算子と同様に、オペランドの前後のどちらかに置くことができます。デクリメント演算子も、前後どちらに置くかで評価の順番が変わります。オペランド同士の値を比較し、真偽値を返す演算子です。厳密等価演算子(===)厳密等価演算子は、左右の2つのオペランドを比較します。同じ型で同じ値である場合に、trueを返します。オブジェクトの参照が同じである場合に、trueを返します。左右の2つのオペランドを比較します。異なる型または異なる値である場合に、trueを返します。true等価演算子(==)等価演算子(==)は、2つのオペランドを比較します。同じデータ型のオペランドを比較する場合は、厳密等価演算子(===)と同じ結果になります。同じ型となるように暗黙的な型変換をしてから比較します。意図しない挙動となることがあるため、暗黙的な型変換が行われる等価演算子(==)を使うべきではありません。代わりに、厳密等価演算子(===)を使い、異なる型を比較したい場合は明示的に型を合わせるべきです。true等価演算子(==)が使われるケースとして、nullとundefinedの比較があります等価演算子(==)ではnullとundefinedの比較結果はtrueとなるため、一度の比較でよくなります。等価演算子(==)は暗黙的な型変換をするため、バグを引き起こしやすいです。そのため、仕組みを理解するまでは常に厳密等価演算子(===)を利用することを推奨します。false不等価演算子も、等価演算子(==)と同様に異なる型のオペランドを比較する際に、暗黙的な型変換をしてから比較します。falseビット演算子ビット演算子では、オペランドである数値を符号付き32ビット整数(0と1からなる32個のビットの集合)として扱います。ような32ビットの集合となります。符号付き32ビット整数では、先頭の最上位ビット(一番左のビット)は符号を表し、0の場合は正の値、1の場合は負の値であることを示しています。ビット論理積(&)ビット論理積演算子(&)はビットごとのAND演算した結果を返します。AND演算では、オペランドの各ビットがどちらも1の場合は1となり、それ以外の場合は0となります。0b1001ビット論理和(|)ビット論理和演算子(|)はビットごとのOR演算した結果を返します。OR演算では、オペランドの各ビットがどちらか片方でも1の場合は1となり、両方とも0の場合は0となります。(^)はビットごとのXOR演算した結果を返します。XOR演算では、オペランドのビットが異なるなら1、両方とも同じなら0となります。0b0110ビット否定(~)単項演算子の否定演算子(~)はオペランドの各ビットを反転した値を返します。これは1の補数として知られている値と同じものです。次のコードでは、10進数で15を否定演算子(~)で各ビットを反転させた値を得ています。0000_0000_0000_0000_0000_0000_0000_1111です。