> 編碼 | 解碼 | 壓縮 <
// Base62編碼實現URL安全的緊湊資料表示
本地處理
100%客戶端Base62編碼。您的資料永遠不會離開瀏覽器。
URL安全
無+、/或=等特殊字元。完美適用於URL和檔案名稱。
雙向轉換
同時支援編碼和解碼功能。可逆資料轉換。
// 關於BASE62編碼
Base62工作原理:
Base62使用62個字符(0-9,A-Z,a-z)來表示資料。它將二進制資料轉換為緊湊的、URL安全的字符串,不含特殊字符。
示例:
"你好" → 5TP3P3v
為什麼使用Base62:
- >無需編碼即可URL安全
- >無特殊字符(+,/,=)
- >比十六進制更短
- >適合資料庫鍵值
- >人類可讀格式
>> 常見問題
問:什麼是Base62編碼?
答:Base62編碼使用62個字元(0-9、A-Z、a-z)來表示資料。類似於Base64,但沒有特殊字元(+、/、=),因此URL安全且適合檔案名稱。
問:Base62與Base64有何不同?
答:Base62使用62個字元,而Base64使用64個。Base62避免了特殊字元,因此無需編碼即可用於URL。Base64更緊湊但需要URL編碼。
問:何時應該使用Base62?
答:在需要URL slug、檔案名稱、資料庫金鑰或任何需要緊湊、URL安全且無特殊字元的編碼情境中使用Base62。
問:Base62編碼是可逆的嗎?
答:是的,Base62編碼是完全可逆的。編碼的資料可以解碼回原始形式,無任何損失。
問:Base62編碼的效率如何?
答:Base62比Base64大約20%,但消除了URL編碼的需求。對網頁應用程式而言,通常整體上更高效。
// RELATED ARTICLES
// 速查表
| DEC | HEX | Base36 | Base62 |
|---|---|---|---|
| 0 | 0 | 0 | 0 |
| 61 | 3d | 1p | z |
| 62 | 3e | 1q | 10 |
| 1000 | 3e8 | rs | G8 |
| 123456789 | 75bcd15 | 21i3v9 | 8M0kX |
| 4294967295 | ffffffff | 1z141z3 | 4gfFC3 |
// 程式碼範例
Alphabet 0-9 A-Z a-z (0-9A-Za-z, no official RFC)
Capacity 62^6 = 56,800,235,584 62^7 = 3,521,614,606,208
Python A="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
while n: s = A[n % 62] + s; n //= 62
JS npm i base62 base62.encode(123456)
>> 更多問題
問:Base62 有統一標準嗎?
答:沒有,Base62 沒有 RFC。各函式庫的字元順序不同:最常見的是 0-9A-Za-z(與本工具一致),也有 0-9a-zA-Z 或 A-Za-z0-9。因此必須使用相同字母表才能正確解碼。
問:Base62 區分大小寫嗎?
答:區分。A 和 a 是不同符號,值也不同,符號數量是 Base36 的兩倍。如果需要不分大小寫的值(如 DNS 標籤),請使用 Base36。
問:6 位或 7 位能容納多少短網址?
答:6 位有 62⁶ = 56,800,235,584 種組合(約 568 億),7 位有 62⁷ = 3,521,614,606,208 種(約 3.5 兆)。因此短網址服務通常 6–8 位就夠用。