Benchmark 基準測試

📝 Benchmark Benchmark

Build and run small JavaScript benchmarks in your browser — compare snippets with real timings.

📐 工作原理與說明
對多個候選實現做可復現的效能對比,輸出統計指標。
  • 取樣:每個候選重複執行 N 次,記錄耗時,統計均值、中位數、標準差與百分位。
  • 預熱:先跑若干輪 warmup 讓 JIT 完成最佳化再正式計時,避免冷啟動偏差。
  • 計時:用 performance.now()(單調高精度時鐘)而非 Date.now()。
  • 干擾:瀏覽器後臺節流、GC 停頓與其他標籤頁負載都會汙染結果,應多輪取穩定值。
負載型別: 時長
執行耗時
—
運算次數
—
效能(ops/sec)
—

💡 測試執行期間頁面可能短暫卡頓,屬正常現象。結果受瀏覽器/裝置影響,僅供參考。

📚 深度解析:Benchmark 基準測試

💡 常見使用場景

對比
對 1e6 整數分別用 `for` 累加與 `sum()`,輸出各自 ops/sec 與相對倍數。

❓ 常見問題(FAQ)

為何要預熱?
JIT/快取使首次偏慢,預熱後測值更穩。
為什麼每次跑結果都不一樣?
JIT 編譯、CPU 頻率動態調整、垃圾回收與其他程序爭搶都會引入波動。可靠做法是:先 warmup 若干輪讓 JIT 穩定,再重複取樣足夠多次,報告中位數與百分位(p95/p99),並在同一臺機器、相近負載下比較;只看單次執行的數字沒有意義。