React / Next.js

React パフォーマンス最適化

React.memo, useMemo, useCallback, lazy loading, code splitting, React DevTools Profiler

22 面接問題·
Senior
1

React.memoの主な役割は何ですか?

回答

React.memoは、コンポーネントのレンダリング結果をメモ化するHigher-Order Componentです。propsの浅い比較を行い、propsが変更されていない場合は再レンダリングをスキップします。同じpropsを頻繁に受け取るコストの高い子コンポーネントの最適化に特に有用です。

2

useMemoとuseCallbackの主な違いは何ですか?

回答

useMemoは関数の結果(返り値)をメモ化し、useCallbackは関数そのものをメモ化します。useMemoはコストの高い計算を最適化するために使用され、useCallbackはpropsとして渡される関数の参照を安定させ、メモ化された子コンポーネントの不要な再レンダリングを防ぐために使用されます。

3

React.memoの使用が逆効果になるのはどのような場合ですか?

回答

React.memoは、毎回異なるpropsを受け取るコンポーネントでは逆効果になり得ます。propsの浅い比較のコストが利点なく追加されるためです(コンポーネントはどのみち再レンダリングされます)。React.memoは、同じpropsを頻繁に受け取り、レンダリングコストの高いコンポーネントに使用するのが適切です。

4

React.memoでメモ化されたコンポーネントにpropとして渡す関数にuseCallbackを使用するのはなぜですか?

5

React.lazyを使ったcode splittingの主な利点は何ですか?

+19 面接問題

次の面接に向けてReact / Next.jsをマスター

すべての問題、flashcards、技術テスト、コードレビュー演習、面接シミュレーターにアクセス。

無料で始める