Функция WindowOrWorkerGlobalScope.atob()
декодирует строку данных, которая была закодированa с использованием base-64. Вы можете использовать метод btoa()
, чтобы декодировать и передать данные, которые в исходном виде могут вызвать проблемы передачи, затем отправить их, и использовать метод atob()
чтобы декодировать данны снова. Например, вы можете закодировать, передать, и декодировать управляющие символы, такие как ASCII значения от 0 до 31.
В случаях использования с Unicode или UTF-8 строками, смотрите this note at Base64 encoding and decoding и this note at btoa()
.
Синтаксис
var decodedData = scope.atob(encodedData);
Throws
Выбрасывает DOMException
, если длина переданной строки не кратна 4.
Пример
var encodedData = window.btoa('Hello, world'); // кодирует строку
var decodedData = window.atob(encodedData); // декодирует строку
Спецификации
Спецификация | Статус | Комментарий |
---|---|---|
HTML Living Standard Определение 'WindowOrWorkerGlobalScope.atob()' в этой спецификации. |
Живой стандарт | Method moved to the WindowOrWorkerGlobalScope mixin in the latest spec. |
HTML Living Standard Определение 'WindowBase64.atob()' в этой спецификации. |
Живой стандарт | No change since the latest snapshot, HTML 5.1. |
HTML 5.1 Определение 'WindowBase64.atob()' в этой спецификации. |
Рекомендация | Snapshot of HTML Living Standard. No change. |
HTML5 Определение 'WindowBase64.atob()' в этой спецификации. |
Рекомендация | Snapshot of HTML Living Standard. Creation of WindowBase64 (properties were on the target before it). |
Совместимость с браузерами
Feature | Chrome | Edge | Firefox (Gecko) | Internet Explorer | Opera | Safari (WebKit) |
---|---|---|---|---|---|---|
Basic support | (Да) | (Да) | 1.0 (1.7 или ранее)[1] 27 (27)[2] 52 (52)[3] |
10 | (Да) | (Да) |
Feature | Android | Edge | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Basic support | (Да) | (Да) | 1.0 (1) 52 (52)[3] |
Нет | ? | (Да) |
[1] atob()
is also available to XPCOM components implemented in JavaScript, even though window
is not the global object in components.
[2] Начиная с Firefox 27, atob()
игнорирует все символы пробелов в аргументе, чтобы соответствовать последним HTML5 спецификациям (смотри баг 711180).
[3] atob()
теперь определен в миксине WindowOrWorkerGlobalScope
.