Toggle navigation
MeasureThat.net
Create a benchmark
Tools
Feedback
FAQ
Register
Log In
Component re-renders 2
(version: 1)
Comparing performance of:
Warmup vs TestFunctionalComponent vs TestMemoizedFunctionalComponent vs TestClassComponent vs TestClassPureComponent
Created:
4 years ago
by:
Registered User
Jump to the latest result
HTML Preparation code:
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/16.13.1/umd/react.production.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.13.1/umd/react-dom.production.min.js"></script> <div id="root"></div>
Script Preparation code:
function Warmup(props) { return React.createElement('button', { }, 'Click me!'); } const FunctionalComponent = (props) => { return React.createElement('div') } class ClassComponent extends React.Component { render() { return React.createElement('div') } } class ClassPureComponent extends React.PureComponent { render() { return React.createElement('div') } } const MemoizedFunctionalComponent = React.memo(FunctionalComponent) function TestFunctionalComponent () { return React.createElement(FunctionalComponent, { a: Math.random() }) } function TestMemoizedFunctionalComponent () { return React.createElement(MemoizedFunctionalComponent, { a: Math.random() }) } function TestClassComponent () { return React.createElement(ClassComponent, { a: Math.random() }) } function TestClassPureComponent () { return React.createElement(ClassPureComponent, { a: Math.random() }) }
Tests:
Warmup
ReactDOM.render(React.createElement(Warmup), document.getElementById('root'))
TestFunctionalComponent
ReactDOM.render(React.createElement(TestFunctionalComponent), document.getElementById('root'))
TestMemoizedFunctionalComponent
ReactDOM.render(React.createElement(TestMemoizedFunctionalComponent), document.getElementById('root'))
TestClassComponent
ReactDOM.render(React.createElement(TestClassComponent), document.getElementById('root'))
TestClassPureComponent
ReactDOM.render(React.createElement(TestClassPureComponent), document.getElementById('root'))
Rendered benchmark preparation results:
Suite status:
<idle, ready to run>
Run tests (5)
Previous results
Fork
Test case name
Result
Warmup
TestFunctionalComponent
TestMemoizedFunctionalComponent
TestClassComponent
TestClassPureComponent
Fastest:
N/A
Slowest:
N/A
Latest run results:
No previous run results
This benchmark does not have any results yet. Be the first one
to run it!
Related benchmarks:
React Memo or No Memo
useMemo and memo
Memoization + useCallback
Memoization + useCallback (II)
Comments
Confirm delete:
Do you really want to delete benchmark?