ホームページ  >  記事  >  ウェブフロントエンド  >  JavaScript で「 」は文字列を連結するのに、「 - 」は数値を減算するのはなぜですか?

JavaScript で「 」は文字列を連結するのに、「 - 」は数値を減算するのはなぜですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-11-24 00:05:14409ブラウズ

Why Does ' ' Concatenate Strings But '-' Subtracts Numbers in JavaScript?

JavaScript の文字列と数値を含む ' ' 演算子と '-' 演算子の異なる動作

JavaScript は、次の間で数学演算を実行するときに不可解な動作を示します。文字列と数字。具体的には、' ' 演算子と '-' 演算子の動作は、関連するオペランドの種類によって異なります。

この観察を説明するために 2 つの例を詳しく見てみましょう:

  1. 文字列の連結 ( ):

    console.log("1" + 1);

    出力: "11"

  2. 数値の減算 (-):

    console.log("1" - 1);

    出力: 0

推論:

  1. 文字列連結: ' ' 演算子は、次のいずれかの場合に文字列連結を実行します。オペランドは文字列です。最初の例では、「1」は文字列であるため、JavaScript は数値 1 を文字列に変換して連結し、結果として「11」が得られます。
  2. 数値の減算: 、「-」演算子は文字列の減算を実行できません。代わりに、JavaScript は文字列オペランド (2 番目の例では「1」) を数値に変換しようとします。 「1」は数値として有効に解釈できるため、この変換は成功します。ただし、1 から 1 を減算すると 0 になります。

この動作は、JavaScript が操作の互換性を保つために型強制が自動的に実行される「緩やかな型付け」パラダイムに従っているという事実に起因します。ただし、「-」演算子と文字列の場合、型強制を適用できないため、観察された動作が発生します。

以上がJavaScript で「 」は文字列を連結するのに、「 - 」は数値を減算するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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