2.9.5. 加法演算子
加法演算子 (つまり、プラス記号とマイナス記号) は通常、最も単純な演算子ですが、ECMAScript では、各加法演算子に多数の特殊な動作があります。
1. 加算演算子:
2. 減算演算子:
var bResult="B"<"a";
console.log(bResult);//true
var bResult="b"<" a";
console.log(bResult);//false
var bResult="13"<"2";
console.log(bResult);//true
var bResult =13<"2";
console.log(bResult);//false
var bResult=-1<"a";
console.log(bResult) ;//false
17 行目のコードでは、「a」が数値に変換されると NaN が返され、NaN を含む関係演算はすべて false を返す必要があります。
2.9.7. 等号演算子
1. 等号と不等号
ECMAScript では、等号 (==) と不等号 (!=)両方ともブール値を返します。 2 つのオペランドが等しいかどうかを判断するには、両方のオペランドの型変換が行われます。変換規則は次のとおりです。
オペランドがブール値の場合は、等しいかどうかを確認する前に数値に変換します。 false は 0 に変換され、true は 1 に変換されます。
一方のオペランドが文字列で、もう一方のオペランドが数値の場合は、等しいかどうかをチェックする前に文字列を数値に変換してみます。
一方のオペランドがオブジェクトで、もう一方のオペランドが文字列の場合、等しいかどうかをチェックする前にオブジェクトを文字列に変換してみます。
一方のオペランドがオブジェクトで、もう一方のオペランドが数値の場合は、等しいかどうかをチェックする前にオブジェクトを数値に変換してみます。
比較を行う場合、演算子は次の戻り規則にもに従います。
値 null と unknown は等しい
等価性をチェックする場合、null と unknown を他の値に変換することはできません。
オペランドが NaN の場合、等号は false を返し、等号以外は true を返します。重要: 両方のオペランドが NaN であっても、規則に従って NaN は NaN と等しくないため、等号は false を返します。
両方のオペランドがオブジェクトの場合、それらの参照値が比較されます。 2 つのオペランドが同じオブジェクトを参照する場合、等号は true を返します。それ以外の場合、2 つのオペランドは等しくありません。
例:
console .log( null==unknown);//true
console.log("NaN"==NaN);//false
console.log(5==NaN);//false
コンソール.log( NaN==NaN);//false
console.log(NaN!=NaN);//true
console.log(false==0);//true
console.log (true= =1);//true
console.log(true==2);//false
console.log(unknown==0);//false
console.log(null) ==0 );//false
console.log("5"==5);//true
2. 一致する符号と一致しない符号
が等しい等号 不等号と同様の演算子は、等号と不等号です。これら 2 つの演算子は、等しいかどうかをチェックする前に型変換を実行しないことを除いて、等号および不等号と同じことを行います。一致する符号は 3 つの等号 (===) で表され、一致しない符号は感嘆符と 2 つの等号 (!==) で表され、型変換なしでオペランドが等しい場合にのみ True が返されます。例:
console.log("55 "==55 );//true
console.log("55"===55);//false
console.log("55"!=55);//false
コンソール.log(" 55"!==55);//true
2.9.8、条件演算子
条件演算子は他の言語と同じです: variablebe=boolean_expression?true_value:false_value ;
例:
function Max( iNum1,iNum2){
return iNum1>=iNum2?iNum1:iNum2;
}
console.log(Max(1,3));//3
console.log(Max(3) ,1));/ /3
2.9.9. 代入演算子
単純な代入演算子は等号 (=) によって実装され、単に右側の値を代入します。等号の左側の変数に等号を付けます。例:
var iNum=10;
複合代入演算は、乗算演算子、加法演算子、または変位演算子と、等号 (=)。これらの代入演算子は、次の一般的なケースの短縮形です:
var iNum=10;
//
var iNum=10;
と同等主要な算術演算と他のいくつかの演算には複合代入演算子があります:
乗算/代入 (*=)
除算/代入 (/=)
モジュロ/代入 (%=)
加算/代入 (=)
減算/代入 (-=)
左シフト/代入 (<<=)
符号付き右シフト/代入 (>>=)
符号なし右シフト/assignment (>>>=)
2.9.10、カンマ演算子
1 つのステートメントで複数の操作を実行するには、カンマ演算子を使用します。例:
var iNum=1,iNum2=2,iNum3=3;
カンマ演算子は変数宣言で最も一般的に使用されます。