LibraTool logoLibraTool

免費打字速度測試(WPM)

透過定時、詞數、引文、自定義和禪意測試測量您的輸入速度(WPM)和準確性。即時 WPM、原始速度、一致性、結果圖表、多種語言和逐字元回饋 — 完全在您的瀏覽器中。

還沒有繁體中文詞庫,因此這些詞是英語。請照著輸入,或貼上您自己的文字。
0Tab — 重新開始

開始輸入即可開始 — 計時器從您的第一次按鍵開始。

完全在您的瀏覽器中執行 — 您輸入的任何內容都不會上傳。

工作原理

打字速度測試完全在瀏覽器中執行,使用 React 狀態和 performance.now() 計時——沒有伺服器、不上傳,也不使用外部服務。按鍵會即時分類和計數,WPM、準確率和穩定性採用 Monkeytype 公開的相同基於字元的公式計算。

  1. 1
    詞表在本地載入
    選擇語言後,詞庫從靜態 JSON 檔案中取得並儲存在元件狀態中。然後隨機抽取單字建立測試文字;啟用標點或數字時,產生器會按機率在序列中插入逗號、句末標點和數字。
  2. 2
    按秒統計按鍵
    一個隱藏的輸入元素捕獲每個字元。每次按鍵都會使當秒的計數桶加一,每個字元都會立即與目標比較,分類為正確、錯誤或多餘。計時器透過 setInterval 每秒執行一次,並使用 performance.now() 保證精度。
  3. 3
    根據原始按鍵資料計算指標
    測試結束時,淨 WPM 由完全正確的單字的字元數加上其後的空格數,除以經過的秒數,再換算為標準的每詞 5 個字元單位。原始 WPM 統計包括錯誤在內的每次按鍵。穩定性使用每秒的原始取樣計算變異係數,再應用 kogasa 平滑公式(100 × (1 − tanh(cov + cov³/3 + cov⁵/5)))得出 0–100 的分數。
  4. 4
    結果圖表渲染到 Canvas
    WPM 隨時間變化和原始 WPM 隨時間變化的曲線使用 2D Context API 繪製在 HTML Canvas 元素上。匯出結果時,同一 Canvas API 會渲染一張 820×460 的圖片——包括圖表、主要資料和 libratool.com 署名——並透過 canvas.toBlob() 以 PNG 提供。

相關工具

常見問題