CNode

各个压缩框架基准测试

分享
Ii5ting发布于6 年前最后回复6 年前1 回复10025 浏览0 收藏

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
MinifierMinifiedMinzippedTime
babel-minify🏆 -53% 246.0 kB-33% 82.3 kB8,470.73ms
uglify-js-53% 246.6 kB🏆 -34% 80.8 kB6,254.75ms
terser-52% 248.8 kB-33% 81.7 kB4,223.79ms
esbuild-52% 251.2 kB-31% 84.2 kB🏆 92.71ms
uglify-js.no-compress-51% 255.5 kB-33% 82.2 kB951.61ms
terser.no-compress-51% 255.9 kB-32% 82.8 kB2,109.97ms

jquery v3.5.1

  • Size: 287.6 kB
  • Gzip size: 84.7 kB
MinifierMinifiedMinzippedTime
uglify-js🏆 -70% 88.9 kB🏆 -64% 31.0 kB2,544.63ms
terser-69% 90.3 kB-64% 31.2 kB1,840.82ms
esbuild-69% 90.6 kB-63% 32.2 kB🏆 53.13ms
babel-minify-68% 92.4 kB-63% 31.9 kB4,445.48ms
uglify-js.no-compress-68% 94.3 kB-63% 31.6 kB506.88ms
terser.no-compress-67% 95.0 kB-63% 31.9 kB675.61ms

lodash v4.17.20

  • Size: 542.6 kB
  • Gzip size: 96.8 kB
MinifierMinifiedMinzippedTime
uglify-js🏆 -88% 69.5 kB🏆 -75% 24.5 kB4,782.25ms
terser-87% 71.2 kB-74% 25.2 kB1,783.7ms
babel-minify-87% 71.9 kB-74% 25.3 kB2,769.06ms
esbuild-87% 72.7 kB-73% 26.2 kB🏆 37.14ms
uglify-js.no-compress-87% 75.2 kB-74% 25.8 kB835.68ms
terser.no-compress-87% 75.8 kB-73% 26.3 kB4,614.27ms

moment v2.29.1

  • Size: 173.9 kB
  • Gzip size: 36.5 kB
MinifierMinifiedMinzippedTime
uglify-js🏆 -67% 58.3 kB🏆 -50% 18.5 kB2,998.92ms
terser-66% 59.2 kB-49% 18.7 kB1,488.4ms
babel-minify-66% 59.2 kB-49% 18.8 kB2,956.88ms
esbuild-66% 60.1 kB-47% 19.4 kB🏆 42.82ms
uglify-js.no-compress-64% 63.0 kB-47% 19.5 kB608.02ms
terser.no-compress-64% 63.3 kB-47% 19.7 kB619.25ms

react v16.14.0

  • Size: 60.6 kB
  • Gzip size: 16.5 kB
MinifierMinifiedMinzippedTime
uglify-js🏆 -69% 19.1 kB🏆 -58% 6.9 kB763.25ms
terser-68% 19.6 kB-57% 7.1 kB457.61ms
babel-minify-68% 19.9 kB-57% 7.2 kB1,225.52ms
esbuild-67% 20.1 kB-56% 7.3 kB🏆 22.48ms
uglify-js.no-compress-66% 21.0 kB-56% 7.3 kB138.18ms
terser.no-compress-66% 21.2 kB-55% 7.5 kB196.26ms

terser v5.5.1

  • Size: 860.3 kB
  • Gzip size: 173.1 kB
MinifierMinifiedMinzippedTime
terser🏆 -53% 407.2 kB🏆 -34% 114.6 kB3,542.56ms
esbuild-53% 409.2 kB-33% 117.5 kB🏆 93.07ms
terser.no-compress-52% 420.8 kB-34% 115.3 kB1,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
MinifierMinifiedMinzippedTime
uglify-js🏆 -49% 643.9 kB🏆 -37% 158.9 kB8,609.02ms
babel-minify-49% 644.6 kB-36% 161.3 kB15,099.37ms
esbuild-49% 647.0 kB-35% 163.2 kB🏆 138.66ms
terser-48% 652.7 kB-37% 159.0 kB4,778.23ms
uglify-js.no-compress-46% 674.6 kB-35% 162.7 kB1,604.78ms
terser.no-compress-46% 674.8 kB-35% 162.7 kB2,049.4ms

vue v2.6.12

  • Size: 223.2 kB
  • Gzip size: 62.3 kB
MinifierMinifiedMinzippedTime
uglify-js🏆 -58% 94.2 kB🏆 -50% 31.2 kB1,974.65ms
terser-58% 95.0 kB-50% 31.3 kB994.28ms
babel-minify-58% 95.3 kB-50% 31.5 kB2,462.91ms
esbuild-58% 95.4 kB-49% 31.9 kB🏆 34.23ms
uglify-js.no-compress-55% 101.0 kB-49% 32.2 kB502.9ms
terser.no-compress-55% 101.3 kB-49% 32.2 kB488.16ms
查看回复

回复 (1)

I
i5ting#1·6 年前

看结果是,esbuild在综合结果上碾压所有。

参与回复
登录后即可参与回复。登录