Window: atob() メソッド
Baseline
広く利用可能
この機能は広く実装されており、多くのバージョンの端末やブラウザーで動作します。2015年7月以降、すべてのブラウザーで利用可能です。
atob() は Window インターフェイスのメソッドで、 Base64 エンコーディングでエンコードされたデータの文字列をデコードします。 Window.btoa() メソッドを使用して、通信に問題が発生する可能性のあるデータをエンコードして送信し、送信した後に atob() メソッドを使用して再度デコードすることができます。例えば、ASCII の 0 から 31 までのコードような制御文字をエンコードして送信し、デコードすることができます。
Uint8Array.fromBase64() メソッドを使用することも検討してください。このメソッドは、base64 エンコードされた文字列から Uint8Array オブジェクトを作成します。その結果、生のバイト列を含む文字列よりも作業しやすい、バイト配列が生成されます。
構文
js
atob(encodedData)
引数
encodedData-
Window.btoa()によって生成されたアルファベットを使用した、base64 エンコードされた文字列です。
返値
encodedData からデコードされた生のバイト列を含むバイナリー文字列です。 JavaScript の文字列は UTF-16 でエンコードされているため、これはそれぞれの文字が 256 未満のコードポイントを持ち、 1 バイトのデータを表すことを意味します。
例外
InvalidCharacterErrorDOMException-
encodedDataが妥当な base64 ではない場合に発行されます。
例
js
const encodedData = window.btoa("Hello, world"); // 文字列をエンコード
const decodedData = window.atob(encodedData); // 文字列をデコード
その他の例については、Window.btoa() メソッドをご覧ください。
仕様書
| 仕様書 |
|---|
| HTML> # dom-atob-dev> |
ブラウザーの互換性
関連情報
atobのポリフィル はcore-jsにありますdataURLWorkerGlobalScope.atob(): 同じメソッドですが、ワーカーのスコープのものです。Window.btoa()Uint8Array.fromBase64()