1. ホーム
  2. javascript

Javascriptの(+)記号は、変数の合計を与える代わりに、連結します。

2023-10-05 09:54:45

質問

なぜこれを使うのか:(仮に i = 1 )

divID = "question-" + i+1;

私は 質問-11 であり 質問-2 ?

どのように解決するのですか?

代わりにこれを使用してください。

var divID = "question-" + (i+1)

これはかなり一般的な問題で、JavaScriptだけで起こるわけではありません。考え方としては + を表すことができるということです。 ともに 連結と加算の両方を表すことができます。

演算子は左から右へ処理されるので、コードでの判断は次のようになります。

  • "question-" + i 以来 "question-" は文字列なので、連結して、結果として "question-1"
  • "question-1" + 1 以来 "queston-1" は文字列なので、連結して、結果として "question-11" .

とは "question-" + (i+1) とは異なります。

  • を使用しているため (i+1) が括弧内にあるため、その値は最初の + が適用される前に計算されなければならない。
    • i は数値です。 1 は数値なので、足し算をすることになります。 2
  • "question-" + 2 以来 "question-" は文字列なので、連結して、結果として "question-2" .