Кодирование и декодирование Base62

Преобразуйте текст в Base62 (цифры и буквы, без специальных символов) или декодируйте строку Base62 в исходный текст. Удобно для создания компактных идентификаторов, читаемых в URL, — и всё это, не покидая браузера.

Пример:

Как это работает

Base62 представляет двоичные данные только 62 буквенно-цифровыми символами (0-9, a-z, A-Z), без знаков препинания и без заполнения (padding). Сначала текст преобразуется в байты UTF-8, затем интерпретируется как большое целое число, которое записывается заново в системе счисления с основанием 62 по цифрам.

Зачем использовать Base62 вместо Base64?

Base64 использует также символы '+', '/' и '=', которые необходимо специально кодировать в URL. В Base62 их нет совсем: полученную строку можно использовать как есть в URL, имени файла или коротком идентификаторе, без дополнительного экранирования.

Всегда ли результат имеет одинаковую длину?

Нет. В отличие от Base64, который выдаёт фиксированную длину на группу байтов, длина Base62 зависит от числового значения закодированного текста: два текста одинаковой длины могут дать строки Base62 чуть разной длины.

Конфиденциальность: все вычисления выполняются локально на JavaScript в вашем браузере, ваш текст никогда не передаётся на сервер.