以下のコードの出力結果について疑問点があります。
一度目のCupコンポーネントの呼び出しで、guestの値は「1」2回目の呼び出し時はguestが1の為「2」3回目は2+ 1で「3」となると思うのですが、出力結果が2,4,6になるのは何故でしょうか。
let guest = 0; function Cup() { // Bad: changing a preexisting variable! guest = guest + 1; return <h2>Tea cup for guest #{guest}</h2>; } export default function TeaSet() { return ( <> <Cup /> <Cup /> <Cup /> </> ); }
例えば
guest += 1
もしくは
guest++
もしくは
++guest
とした場合はどうなりますか?
下記の全てのケースにおいてもguestの初期値が0である場合、最初の出力値は「1」だと思います
guest += 1
もしくは
guest++
もしくは
++guest
思う、ではなく実際試した結果を質問本文に追加してもらえればと。
こちらの原因が判明しました。
https://ja.react.dev/reference/react/StrictMode
了解です。あくまで問題切り分けのために試してみましょう、というだけだったので。
回答1件
あなたの回答
tips
プレビュー