ホームページ >ウェブフロントエンド >jsチュートリアル >JavaScript では「1」1 が「11」に等しいのに、「1」 - 1 が 0 に等しいのはなぜですか?
JavaScript における連結と減算の違いを理解する
JavaScript での文字列と数値の間のプラス ( ) 演算子とマイナス (-) 演算子の処理異なるため、しばしば混乱が生じます。この動作を明確にするために、2 つの例を詳しく見てみましょう。
console.log("1" + 1); // Output: "11" console.log("1" - 1); // Output: 0
文字列連結 ( )
文字列 ("1") と文字列の間でプラス演算子を使用する場合数値 (1) の場合、JavaScript は文字列の連結を実行します。この場合、数値を文字列 (「1」) に変換し、既存の文字列 (「1」) に追加します。その結果、出力は「11」になります。
数値減算 ( -)
ただし、マイナス演算子を使用する場合、JavaScript は数値演算を優先します。文字列に対して減算を実行できないため、減算を実行する前に 2 番目の「1」(文字列) を暗黙的に数値に変換します。したがって、JavaScript は数値 1 から 1 を減算し、出力は 0 になります。
補足:
JavaScript では、プラス演算子をオーバーロードして次のいずれかを実行できます。オペランドのデータ型に応じて、文字列の連結または数値の加算。ただし、マイナス演算子は数値の減算にのみ使用されるため、文字列を操作するときの動作は異なります。
以上がJavaScript では「1」1 が「11」に等しいのに、「1」 - 1 が 0 に等しいのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。