JavaScript 演算子の深い理解

高洛峰
高洛峰オリジナル
2016-11-26 16:28:241511ブラウズ

+ 演算子は、加算演算または文字列の連結を実行できます。加算が必要な場合は、両方の式の値が数値であることを確認してください。

typeof

typeof は関数であると考えていますが、関数呼び出しメソッドは typeof(hello) です。ここでもまだお勧めします。

typeof 演算子は変数の型を決定するために使用され、その戻り値は「数値」、「文字列」、「ブール値」、「未定義」、「関数」、「オブジェクト」です。オペランドが配列または null の場合、結果は「object」となり、不正確になります。

typeof は、未定義の変数を操作できる唯一の演算子です。それ以外の場合は、未定義の変数を操作することはできません。

!!

!!は1人のオペレーターではなく2人です!連続演算は、主に指定されたオペランドをブール型に変換するために使用され、var a = {}、!!a の値が true であるため、if (!! などの条件判断に便利に使用できます)。 a) 条件は true です。

&&

&& は、演算子の両側の式が true の場合は true を返し、そうでない場合は false を返します。実際、JavaScript では、最初の式の値が false の場合は最初の式の値が返され、それ以外の場合は 2 番目の式の値が返されます。たとえば、0 && 2 の値は 0 であり、false ではありません。'' && 2 の値は ''、2 && {} の値は、false ではなく {} です。

||

|| 値が true の場合は最初の式の値を返し、そうでない場合は 2 番目の式の値を返します。たとえば、2 || 0 の値は 2、[] || 2 の値は []、0 || 2 の値は 0 です。

この機能が最も一般的に使用される機会は、変数にデフォルト値を割り当てることです。例: a = a ||{}; これは、空のオブジェクトを作成する一般的な方法で、 a がすでに存在する場合はそれ自体に代入し、それ以外の場合は空のオブジェクト {} を変数 a に代入します。他の使用法は、if (b) { a = 3;}

delete

delete 演算子と同等で、以前に定義されたオブジェクトのプロパティまたはメソッドへの参照を削除します。例: var o = {a: 1}, delete o.a; 属性 a が削除されます。 delete 演算子は、配列要素を削除するためにも使用できます。たとえば、 a = [1, 2, 3]、delete a[1]; a の値は [1, unknown, 2] になり、対応する値が変更されるだけです。要素を未定義に変更しても、配列の長さは変更されません。注: delete では、システムに付属する元の属性を削除することはできません。

void

void 演算子は、どのような値に対しても未定義を返します。この演算子は通常、HTML 要素から JavaScript 関数を呼び出す場合など、出力すべきではない値の出力を避けるために使用されます。これを正しく行うには、関数が有効な値を返してはなりません。返さない場合、ブラウザはページをクリアし、関数の結果のみを表示します。

===

=は代入に使用され、==は両辺の式の値が等しいかどうかを判断するために使用され、===は式の値と型が等しいかどうかを判断するために使用されますJavaScript は弱い型指定の言語であるため、変数の型は宣言時に認識されず、式の値が等しいかどうかを判断するために常に === を使用することをお勧めします。等しい。

new

new 演算子は、コンストラクターを使用してオブジェクトを作成するために使用されます。例: new Book() または new Book、次の括弧は必要ありません。詳細については、JavaScript コンストラクターの原則を参照してください。

関数呼び出し演算子()

関数名+()は関数の実行を意味します。たとえば、var hello = function() {} とすると、hello() は hello 関数を実行します。