0
How would you improve the performance of a large table with 10,000+ rows?
subina kallyani
medium
1completed
333
Answer
If your React app has a large table (10,000+ rows), rendering all rows at once can slow it down because React has to create and update thousands of DOM elements.
To improve performance:
- Virtualization (Best Method) – Use libraries like
react-windoworreact-virtualizedto render only the visible rows on the screen and reuse DOM elements while scrolling.
Why: It drastically reduces the number of rendered elements, improving speed and memory efficiency. - Pagination – Show data in smaller chunks (like 50–100 rows per page).
Why: Reduces the amount of data rendered at once. - Memoization – Use
React.memo,useMemo, anduseCallbackto avoid unnecessary re-renders.
Why: Keeps unchanged rows from re-rendering when data updates. - Lazy Loading – Fetch and render rows in batches as needed.
Why: Improves initial load time and network efficiency.
The best method to improve performance for a large table (10,000+ rows) is virtualization (windowing) — using libraries like react-window or react-virtualized
Why it’s best:
- It renders only the visible rows on the screen (maybe 20–50 at a time) instead of all 10,000.
- As you scroll, it reuses DOM elements to show new rows.
- This keeps the DOM lightweight, improves render speed, and reduces memory usage.
Click to Reveal Answer
Tap anywhere to see the solution
Revealed
Comments0