ホームページ  >  記事  >  ウェブフロントエンド  >  JavaScriptの演算子学習メモ(続き)_基礎知識

JavaScriptの演算子学習メモ(続き)_基礎知識

WBOY
WBOYオリジナル
2016-05-16 16:20:151091ブラウズ

1. 乗算演算子

1. 乗算: *

乗算演算子のいくつかの特別なルール:

オペランドが両方とも数値の場合、積が ECMAscript の数値表現の範囲を超える場合は、従来の乗算に従って計算され、infinity または -infinity が返されます。 オペランドの 1 つが NaN の場合、戻り結果は NaN
になります。 無限大に 0 を掛けると、NaN
が返されます。 無限大にゼロ以外の数値を乗算した場合は、無限大または -infinity
を返します。 無限大と無限大を乗算して無限大を返します
オペランドの 1 つが数値ではない場合、バックグラウンドはまずnumber() を呼び出して数値に変換し、次に上記のルールを適用します

コードをコピーします コードは次のとおりです:
<スクリプトタイプ="text/javascript">

アラート(5 * 6); //30
アラート(5 * NaN) //NaN
; アラート(無限 * 0) //NaN
; アラート(無限 * 2) //無限
; アラート("5" * 5); //25
アラート(true * 10) //10
; アラート(false * 10);



2. 部門: /

除算演算子のいくつかの特別なルール:

オペランドがすべて数値の場合、商が ECMAscript の数値表現の範囲を超える場合は、infinity または -infinity が返されます。

オペランドの 1 つが NaN の場合、戻り結果は NaN

になります。 無限大を無限大で割ると NaN
が返されます。 0 を 0 で割った場合、NaN
を返します。 ゼロ以外の有限数を 0 で割った場合、infinity または -infinity
を返します。 無限大をゼロ以外の有限数で割った場合、無限大または -infinity
を返します。 オペランドの 1 つが数値ではない場合、バックグラウンドはまずnumber() を呼び出して数値に変換し、次に上記のルールを適用します

コードをコピーします コードは次のとおりです:
<スクリプトタイプ="text/javascript"> アラート(5 / 5); アラート(5 / NaN) //NaN
; アラート(無限 / 無限) //NaN
; アラート(無限 / 2); アラート(5 / 0); //無限大
アラート(10 / true); //10
アラート(10 / false);



3. 係数 (剰余): %

モジュロ演算子のいくつかの特別なルール:
オペランドがすべて数値の場合、通常の除算計算に従い、剰余を返します 被除数が無限で、除数が有限数の場合、戻り結果は NaN

になります。 被除数が有限で、除数が 0 の場合、NaN

が返されます。 無限大を無限大で割ると NaN

が返されます。 被除数が有限で除数が無限の場合、被除数を返します

配当が0の場合は0を返します

オペランドの 1 つが数値ではない場合、バックグラウンドは最初にnumber() を呼び出して数値に変換し、次に上記のルールを適用します





コードをコピー

コードは次のとおりです:

<スクリプトタイプ="text/javascript">

アラート(26 % 5) //1
アラート(無限大 % 3) //NaN
; アラート(3 % 0); //NaN
アラート(5 % 無限大) //5
アラート(0 % 10); //0
アラート(true % 25); アラート(3 % false); //NaN



2. 加法演算子

1. 加算演算子:

オペランドの 1 つが文字列の場合:

両方のオペランドが文字列の場合、2 番目のオペランドを最初のオペランドの末尾に連結します。

1 つのオペランドのみが文字列の場合、もう 1 つのオペランドを文字列に変換してから、上記のルールを実行します

コードをコピーします コードは次のとおりです:
<スクリプトタイプ="text/javascript">
Var result1 = 5 5 // デジタルプラス数値
アラート(結果1); //10
var result2 = 5 "5" //数値と文字列
; アラート(結果2); //"55"


2. 減算演算子: -

オペランドの 1 つが文字列、ブール値、null、または未定義の場合、最初にバックグラウンドでnumber() が呼び出されて数値に変換され、その後減算が実行されます。

3. 関係演算子

次より大きい:>

未満:

以上:>=

以下: <=

関係演算子の特別ルール:

オペランドが文字列の場合、2 つの文字列の対応する文字エンコーディングを比較します

一方のオペランドが数値の場合、もう一方のオペランドを数値に変換してから比較します

任意の数値を NaN と比較すると、結果は false になります

4.

等価演算子

1. 平等と不平等: == そして! =

両方の演算子は比較前にオペランドを同じ型に変換します

変換する場合、等価演算子と不等号演算子は次の規則に従います:

オペランドの 1 つがブール型の場合、まず数値型に変換され、false は 0 に変換され、true は 1 に変換されます。

オペランドの一方が文字列で、もう一方が数値の場合、文字列は比較のために数値に変換されます。
オペランドの 1 つがオブジェクトで、もう 1 つがオブジェクトではない場合、最初にオペランドの valueof() メソッドが呼び出され、次に基本型の値が取得されて比較されます
比較する際の特別なルール:

null と未定義は同等です。

null と unknown は他の型に変換されません
いずれかの演算の結果が NaN の場合、等価比較は false を返し、不等比較は true を返します。両方のオペランドが NaN であっても、戻り結果は false のままであることに注意してください。つまり、NaN は NaN と等しくありません。
両方のオペランドがオブジェクトの場合、それらが参照する値が比較され、同じオブジェクトを参照している場合は true を返し、それ以外の場合は false を返します。
2. 一致するものと一致しないもの: == と ===

== は比較のためにオペランドを同じ型に変換します。

=== は型を変換せず、直接比較します

例:

コードをコピーします コードは次のとおりです:
var result1 = ("55" == 55); var result2 = ("55" === 55); alert(result1);//true
alert(result2); //false"55" は文字列、55 は数値、型が異なります




5. 条件演算子

変数 = 条件式?真の値: 偽の値 まず条件式が評価され、結果が true の場合は true の値が変数に代入され、false の場合は false の値が変数に代入されます。

コードをコピー

コードは次のとおりです:

<スクリプトタイプ="text/javascript">
var num1 = 10;
var num2 = 25;
var num3 = (num2 > num1) num2 : num1;
アラート(num3); //25

6. 代入演算子

1. 単純な代入演算子: =

var num1 = 10;
num=num1 10;
2. 複合代入演算子: =、-=、*=、/=、%=、>>=、<<=、>>>=

コードをコピーします コードは次のとおりです:

<スクリプトタイプ="text/javascript">
var num = 5;
アラート(番号); //5
num = 5;
アラート(番号); //10
num *= 2;
アラート(番号); //20
num /= 10;
アラート(番号); //2
num -= 2; アラート(番号); //0


7. カンマ演算子

カンマ演算子は 1 つのステートメントで複数の操作を実行できます

目的: 1. 複数の変数を宣言します

var num1=1、num2=2、num3=3; 2. 課題


var num=(0,1,2,3)//num=3

代入演算で使用される場合、コンマ演算子は常に最後の式の値を返します。


練習エリア:

コードをコピーします コードは次のとおりです:
<スクリプトタイプ="text/javascript">
var num1 = 5;
var num2 = 10;
var message = "5 と 10 の合計は " num1 num2;
アラート(メッセージ);



声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。