https://github.com/privatenumber/minification-benchmarks
🏃♂️🏃♀️🏃 JS minification benchmarks
Benchmarks are gathered on the following minifiers:
📋 Results
- Each minifier is executed in its own process
- The measured time is an average taken from 10 consecutive runs
- Each table is sorted by smallest minified size
- Minzipped size measures how well the minified file compresses with Gzip
- Comments are not stripped because not all minifiers support this
d3 v5.16.0
- Size:
515.7 kB - Gzip size:
121.4 kB
| Minifier | Minified | Minzipped | Time |
|---|---|---|---|
| babel-minify | 🏆 -53% 246.0 kB | -33% 82.3 kB | 8,470.73ms |
| uglify-js | -53% 246.6 kB | 🏆 -34% 80.8 kB | 6,254.75ms |
| terser | -52% 248.8 kB | -33% 81.7 kB | 4,223.79ms |
| esbuild | -52% 251.2 kB | -31% 84.2 kB | 🏆 92.71ms |
| uglify-js.no-compress | -51% 255.5 kB | -33% 82.2 kB | 951.61ms |
| terser.no-compress | -51% 255.9 kB | -32% 82.8 kB | 2,109.97ms |
jquery v3.5.1
- Size:
287.6 kB - Gzip size:
84.7 kB
| Minifier | Minified | Minzipped | Time |
|---|---|---|---|
| uglify-js | 🏆 -70% 88.9 kB | 🏆 -64% 31.0 kB | 2,544.63ms |
| terser | -69% 90.3 kB | -64% 31.2 kB | 1,840.82ms |
| esbuild | -69% 90.6 kB | -63% 32.2 kB | 🏆 53.13ms |
| babel-minify | -68% 92.4 kB | -63% 31.9 kB | 4,445.48ms |
| uglify-js.no-compress | -68% 94.3 kB | -63% 31.6 kB | 506.88ms |
| terser.no-compress | -67% 95.0 kB | -63% 31.9 kB | 675.61ms |
lodash v4.17.20
- Size:
542.6 kB - Gzip size:
96.8 kB
| Minifier | Minified | Minzipped | Time |
|---|---|---|---|
| uglify-js | 🏆 -88% 69.5 kB | 🏆 -75% 24.5 kB | 4,782.25ms |
| terser | -87% 71.2 kB | -74% 25.2 kB | 1,783.7ms |
| babel-minify | -87% 71.9 kB | -74% 25.3 kB | 2,769.06ms |
| esbuild | -87% 72.7 kB | -73% 26.2 kB | 🏆 37.14ms |
| uglify-js.no-compress | -87% 75.2 kB | -74% 25.8 kB | 835.68ms |
| terser.no-compress | -87% 75.8 kB | -73% 26.3 kB | 4,614.27ms |
moment v2.29.1
- Size:
173.9 kB - Gzip size:
36.5 kB
| Minifier | Minified | Minzipped | Time |
|---|---|---|---|
| uglify-js | 🏆 -67% 58.3 kB | 🏆 -50% 18.5 kB | 2,998.92ms |
| terser | -66% 59.2 kB | -49% 18.7 kB | 1,488.4ms |
| babel-minify | -66% 59.2 kB | -49% 18.8 kB | 2,956.88ms |
| esbuild | -66% 60.1 kB | -47% 19.4 kB | 🏆 42.82ms |
| uglify-js.no-compress | -64% 63.0 kB | -47% 19.5 kB | 608.02ms |
| terser.no-compress | -64% 63.3 kB | -47% 19.7 kB | 619.25ms |
react v16.14.0
- Size:
60.6 kB - Gzip size:
16.5 kB
| Minifier | Minified | Minzipped | Time |
|---|---|---|---|
| uglify-js | 🏆 -69% 19.1 kB | 🏆 -58% 6.9 kB | 763.25ms |
| terser | -68% 19.6 kB | -57% 7.1 kB | 457.61ms |
| babel-minify | -68% 19.9 kB | -57% 7.2 kB | 1,225.52ms |
| esbuild | -67% 20.1 kB | -56% 7.3 kB | 🏆 22.48ms |
| uglify-js.no-compress | -66% 21.0 kB | -56% 7.3 kB | 138.18ms |
| terser.no-compress | -66% 21.2 kB | -55% 7.5 kB | 196.26ms |
terser v5.5.1
- Size:
860.3 kB - Gzip size:
173.1 kB
| Minifier | Minified | Minzipped | Time |
|---|---|---|---|
| terser | 🏆 -53% 407.2 kB | 🏆 -34% 114.6 kB | 3,542.56ms |
| esbuild | -53% 409.2 kB | -33% 117.5 kB | 🏆 93.07ms |
| terser.no-compress | -52% 420.8 kB | -34% 115.3 kB | 1,564.05ms |
| babel-minify Failed | — | — | — |
| uglify-js Failed | — | — | — |
| uglify-js.no-compress Failed | — | — | — |
three v0.123.0
- Size:
1.2 MB - Gzip size:
248.7 kB
| Minifier | Minified | Minzipped | Time |
|---|---|---|---|
| uglify-js | 🏆 -49% 643.9 kB | 🏆 -37% 158.9 kB | 8,609.02ms |
| babel-minify | -49% 644.6 kB | -36% 161.3 kB | 15,099.37ms |
| esbuild | -49% 647.0 kB | -35% 163.2 kB | 🏆 138.66ms |
| terser | -48% 652.7 kB | -37% 159.0 kB | 4,778.23ms |
| uglify-js.no-compress | -46% 674.6 kB | -35% 162.7 kB | 1,604.78ms |
| terser.no-compress | -46% 674.8 kB | -35% 162.7 kB | 2,049.4ms |
vue v2.6.12
- Size:
223.2 kB - Gzip size:
62.3 kB
| Minifier | Minified | Minzipped | Time |
|---|---|---|---|
| uglify-js | 🏆 -58% 94.2 kB | 🏆 -50% 31.2 kB | 1,974.65ms |
| terser | -58% 95.0 kB | -50% 31.3 kB | 994.28ms |
| babel-minify | -58% 95.3 kB | -50% 31.5 kB | 2,462.91ms |
| esbuild | -58% 95.4 kB | -49% 31.9 kB | 🏆 34.23ms |
| uglify-js.no-compress | -55% 101.0 kB | -49% 32.2 kB | 502.9ms |
| terser.no-compress | -55% 101.3 kB | -49% 32.2 kB | 488.16ms |
回复 (1)
I
看结果是,esbuild在综合结果上碾压所有。
参与回复
登录后即可参与回复。登录