Qraft(クラフト) 資格・学習クイズアプリ

React入門 練習問題 22:stateとpropsの違い

Reactにおけるstateとpropsの違いに関する説明として正しいものはどれか。

  1. stateは内部で管理・変更可能だが、propsは親から渡され子は直接書き換えられない
  2. stateは親から渡される値で、propsは内部でのみ生成される値である
  3. stateとpropsはどちらも子が自由に書き換えられる値である
  4. stateは一度設定すると変更できず、propsはいつでも自由に変更できる
  5. stateはグローバルな値を管理し、propsはローカルな値を管理する仕組みである
正解と解説を見る
正解:stateは内部で管理・変更可能だが、propsは親から渡され子は直接書き換えられない

stateとpropsはどちらもコンポーネントが扱うデータですが、管理の主体と変更可能性が異なります。stateはコンポーネント自身が内部で保持し変更できるのに対し、propsは親から受け取る読み取り専用のデータです。

【正解の理由】
stateはuseStateなどを使ってコンポーネント内部で定義・更新される値であり、propsは親コンポーネントから渡され、子コンポーネント側で直接変更することはできません。

【不正解の理由】
• 「stateは親から渡される値で、propsは内部でのみ生成される」:説明が逆になっている
• 「どちらも子が自由に書き換えられる」:propsは読み取り専用であり、子コンポーネントが直接書き換えることはできない
• 「stateは一度設定すると変更できず」:stateはsetStateなどの更新関数を通じて何度でも変更可能
• 「stateはグローバル、propsはローカル」:stateはそのコンポーネントに閉じたローカルな値であり、説明が誤っている

← 前の問題問題一覧次の問題 →
アプリで解いてレーティングを上げる(無料・登録不要)