1。乗算演算子
1。乗算: *
乗算演算子のためのいくつかの特別なルール:
オペランドが従来の乗算に従って数値の場合、製品がECMAScript値の表現範囲を超えている場合、無限またはインフィニティを返します
オペランドがnanの場合、戻り結果はnanです
無限に0を掛けた場合、NANを返します
Infinityに非0の数字を掛けた場合、無限または-Infinityを返します
無限に無限を掛け、無限を返します
数値ではないオペランドがある場合、背景は最初に番号()を呼び出して数値に変換し、次に上記のルールを適用します
コードコピーは次のとおりです。
<script type = "text/javascript">
アラート(5 * 6); // 30
アラート(5 * nan); // nan
アラート(Infinity * 0); // nan
アラート(無限 * 2); // Infinity
アラート( "5" * 5); // 25
アラート(true * 10); // 10
アラート(false * 10); // 0
</script>
2。ディビジョン:/
部門オペレーターのためのいくつかの特別なルール:
従来の分割計算に従ってオペランドがすべて数値的な値である場合、商がECMAScript値の表現範囲を超える場合、Infinityまたは-infinityを返します
オペランドがnanの場合、戻り結果はnanです
InfinityがInfinityによって追放される場合、NANに戻ります
0が0で除算されている場合、NANを返します
有限数の非0を0で割っている場合、無限または-infinityを返します
Infinityがゼロではない有限数で分割されている場合、Infinityまたは-infinityを返します
数値ではないオペランドがある場合、背景は最初に番号()を呼び出して数値に変換し、次に上記のルールを適用します
コードコピーは次のとおりです。
<script type = "text/javascript">
アラート(5/5); // 1
アラート(5 / nan); // nan
アラート(Infinity / Infinity); // nan
アラート(Infinity / 2); // Infinity
アラート(5/0); // Infinity
アラート(10 / true); // 10
アラート(10 / false); // Infinity
</script>
3.モジュールを見つける(残り):%
モジュラー演算子を見つけるためのいくつかの特別なルール:
オペランドがすべて数値値である場合、従来の分割方法に従って計算し、分割することによって取得された残りの数を返します
配当が無限であり、配当が有限数である場合、戻り結果はnanです
配当が有限で、配当が0の場合は、nanを返します
InfinityがInfinityによって追放される場合、NANに戻ります
配当が有限で、配当が無限である場合は、配当を返します
配当が0の場合、0を返します
数値ではないオペランドがある場合、背景は最初に番号()を呼び出して数値に変換し、次に上記のルールを適用します
コードコピーは次のとおりです。
<script type = "text/javascript">
アラート(26%5); // 1
アラート(Infinity%3); // nan
アラート(3%0); // nan
アラート(5%Infinity); // 5
アラート(0%10); // 0
アラート(true%25); // 1
アラート(3%false); // nan
</script>
2。添加剤演算子
1。追加演算子: +
オペランドの1つが文字列である場合:
両方のオペランドが弦である場合、最初のオペランドの後に2番目のオペランドをスプライスします。
1つのオペランドのみが文字列である場合は、別のオペランドを文字列に変換してから、上記のルールを実行します
コードコピーは次のとおりです。
<script type = "text/javascript">
var result1 = 5 + 5; //番号に番号を追加します
アラート(result1); // 10
var result2 = 5 + "5"; //番号のある文字列を追加します
アラート(result2); // "55"
</script>
2。減算演算子: -
オペランドが文字列、ブール、ヌル、または未定義である場合、バックグラウンドで番号()を呼び出して数値に変換してから減算を実行します。
3。リレーショナル演算子
より大きい:>
未満:<
> =
以下:<=
リレーショナルオペレーターの特別なルール:
オペランドが弦の場合、2つの文字列の対応する文字エンコードを比較します
1つのオペランドが数値である場合は、もう1つのオペランドを数値に変換して、比較してください。
任意の数がNANと比較され、結果は偽です
IV。平等な演算子
1。平等で不平等:==そして! =
両方のオペレーターは、比較する前にオペランドを同じタイプに変換します
変換するとき、平等と不平等の演算子は次のルールに従います。
オペランドの1つにタイプブール波がある場合は、最初に数値タイプに変換し、false 0に変換し、1に変換します。
オペランドの1つに文字列の種類があり、もう1つが数値タイプである場合は、比較のために文字列を数値に変換します。
オペランドの1つがオブジェクトであり、もう1つがオブジェクトでない場合は、最初にオペランドの値()メソッドを呼び出して、基本的なタイプの値を取得してから比較します
比較のための特別なルール:
nullと未定義は等しい。
NULLおよび未定義は他のタイプに変換されません
操作の結果がNANの場合、Equal比較はFALSEを返し、不均等な比較はTRUEを返します。両方のオペランドがNANであっても、戻り結果は偽です。つまり、NANはNANに等しくないことに注意してください。
両方のオペランドがオブジェクトである場合、同じオブジェクトが参照されている場合、それらが参照する値を比較し、それ以外の場合はfalseを返します。
2。一致と不完全性:== ===
==オペランドは比較のために同じタイプに変換されます。
===タイプは変換されません、直接比較します
例えば:
コードコピーは次のとおりです。
var result1 =( "55" == 55);
var result2 =( "55" === 55);
アラート(result1); // true
アラート(result2); // false "55"は文字列で、55は数字で、タイプは異なります
V.条件付き演算子
変数=条件付き式?真の値:偽の値
まず、条件付き式が評価されます。結果がtrueの場合、真の値は変数に割り当てられます。 falseの場合、false値は変数に割り当てられます。
コードコピーは次のとおりです。
<script type = "text/javascript">
var num1 = 10;
var num2 = 25;
var num3 =(num2> num1)? num2:num1;
アラート(num3); // 25
</script>
6。割り当て演算子
1。単純な割り当て演算子:=
var num1 = 10;
num = num1+10;
2。化合物割り当て演算子: +=、 - =、 *=、 /=、%=、>> =、<< =、>>> =
コードコピーは次のとおりです。
<script type = "text/javascript">
var num = 5;
アラート(num); // 5
num += 5;
アラート(num); // 10
num *= 2;
アラート(num); // 20
num /= 10;
アラート(num); // 2
num- = 2;
アラート(num); // 0
</script>
7。コンマオペレーター
コンマオペレーターは、単一のステートメントで複数の操作を実行できます
目的:1。複数の変数を宣言します
var num1 = 1、num2 = 2、num3 = 3;
2。割り当て
var num =(0,1,2,3)// num = 3
割り当て操作に使用する場合、コンマオペレーターは常に最後の式の値を返します。
練習エリア:
コードコピーは次のとおりです。
<script type = "text/javascript">
var num1 = 5;
var num2 = 10;
var message = "5と10の合計は" + num1 + num2;
アラート(メッセージ);
</script>
コードコピーは次のとおりです。
<script type = "text/javascript">
アラート(null == undefined);
アラート(null === undefined);
アラート( "nan" == nan);
アラート( "nan" === nan);
アラート(nan == nan);
アラート(nan === nan);
アラート(nan!= nan);
アラート(nan!== nan);
アラート(false == 0);
アラート(false === 0);
アラート(true == 1);
アラート(true === 1);
アラート(null == 0);
アラート(未定義== 0);
アラート(5 == "5");
アラート(5 === "5");
</script>
上記はこの記事に関するすべてであり、JavaScriptオペレーターの説明はここで終わります。次の記事では、JavaScriptステートメントについて説明します。