ホームページ >ウェブフロントエンド >jsチュートリアル >JavaScript で文字列を追加すると、数値の加算ではなく連結が行われるのはなぜですか?

JavaScript で文字列を追加すると、数値の加算ではなく連結が行われるのはなぜですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-12-24 11:14:10405ブラウズ

Why Does Adding Strings in JavaScript Result in Concatenation Instead of Numerical Addition?

数値加算における予期しない文字列連結の解決

問題: 文字列で表される 2 つの数値を加算しようとすると、結果が正しくなくなります。合計される代わりに連結されます。たとえば、1 2 は 3 ではなく "12" を返します。

コード スニペット:

var y = document.getElementById("txt1").value;
var z = document.getElementById("txt2").value;
var x = y + z;

説明: y と の値z は、HTML 入力要素から文字列として取得されます。これらの文字列が「 」演算子を使用して追加されると、JavaScript はそれらをテキストとして扱い、数学的な加算を実行する代わりに連結します。

解決策: この問題を解決するには、文字列を変換する必要があります。加算を実行する前に数値に変換します。これは、各文字列の先頭に ' ' 演算子を追加することで実現できます。

var x = +y + +z;

この変更されたコードでは、' ' 演算子を使用して、文字列を加算する前に文字列を強制的に数値に変換します。これにより、1 2 は連結された文字列「12」ではなく、3 の正しい合計を返すようになります。

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

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