Description
I ran a few benchmarks on the server (modifying https://github.com/paulshen/react-bench to not use jsdom). The results were surprising, as the browserified react.js
was about 30% faster than the npm version, even with NODE_ENV=production
.
The performance ranking (test run time) was react.min.js
< react.js
< NODE_ENV=production node react
< node react
.
I suspect process.env
is not a regular js object but perhaps a getter and thus carries a penalty when you test for "production" !== process.env.NODE_ENV
everywhere.
Also the minified version might still perform best of all, as at least some time ago V8 used function source length (including comments) as a heuristic for function complexity / compilation time and thus affecting chances for optimization in some cases, but the effect might be negligible.