JavaScript/JavaScriptの演算子
概要
[編集]JavaScriptの演算子は、データに対して操作を行うための記号です。演算子を使用することで、値の計算、比較、代入、論理演算などを行うことができます。JavaScriptには多くの種類の演算子があり、各演算子は異なる目的で使用されます。
演算子の種類
[編集]JavaScriptには以下の種類の演算子があります。
代入演算子
[編集]代入演算子は、右辺の値を左辺の変数に代入するために使用されます。 - =
: 代入
letx=5;// xに5を代入
複合代入演算子もよく使用されます。これにより、代入と演算を同時に行うことができます。
leta=10;a+=5;// a = a + 5a*=2;// a = a * 2
=== 算術演算子 === 算術演算子は、数値の演算を行うために使用されます。
letsum=5+3;// 8letdiff=10-4;// 6letprod=4*7;// 28letquotient=9/3;// 3letremainder=9%4;// 1letpower=2**3;// 8
比較演算子
[編集]比較演算子は、値を比較し、結果を真(true
)または偽(false
)で返します。
console.log(5=='5');// true(型変換あり)console.log(5==='5');// false(型変換なし)console.log(10!=5);// trueconsole.log(3>2);// true
論理演算子
[編集]論理演算子は、ブール値に対して論理演算を行います。
leta=true;letb=false;console.log(a&&b);// falseconsole.log(a||b);// trueconsole.log(!a);// false
条件(三項)演算子
[編集]条件演算子は、条件に基づいて異なる値を返すための演算子です。if
文の簡易表現として使用されます。
条件 ? 真の場合 : 偽の場合
letage=18;letcanVote=(age>=18)?"Yes":"No";console.log(canVote);// "Yes"
インクリメント・デクリメント演算子
[編集]インクリメント演算子(++
)とデクリメント演算子(--
)は、変数の値をそれぞれ1ずつ増加または減少させます。
letx=5;x++;// 6lety=10;y--;// 9
前置(++x
, --x
)と後置(x++
, x--
)の違いもあります。前置は値を増減させた後に使用され、後置は使用後に増減されます。
letz=5;console.log(++z);// 6(前置)console.log(z--);// 6(後置)
ビット演算子
[編集]ビット演算子は、数値のビットレベルでの操作を行います。
leta=5;// 101letb=3;// 011console.log(a&b);// 1(ビット論理積)console.log(a|b);// 7(ビット論理和)console.log(a^b);// 6(ビット排他的論理和)console.log(~a);// -6(ビット反転)console.log(a<<1);// 10(左シフト)
型演算子
[編集]型演算子は、値の型に関連する操作を行います。
typeof
: 型を取得instanceof
: インスタンスを確認
console.log(typeof5);// "number"console.log(typeof"hi");// "string"console.log([]instanceofArray);// true
副作用演算子
[編集]副作用演算子は、主にオブジェクトや配列に対して操作を行うときに使います。
letobj={name:"Alice",age:25};deleteobj.age;// objからageを削除console.log('age'inobj);// falseletresult=void0;// resultはundefinedになるconsole.log(result);// undefined
演算子の優先順位
[編集]演算子には優先順位があり、複数の演算子を使用する場合、優先順位に従って演算が行われます。例えば、算術演算子は比較演算子よりも優先されます。優先順位を明確にするためには、括弧 ()
を使って順番を指定することが推奨されます。
結論
[編集]JavaScriptの演算子は、データの操作や比較、条件分岐を行うための強力なツールです。演算子を適切に使用することで、効率的で可読性の高いコードを書くことができます。