Base64 encoding and decoding
atob() は Window インターフェイスのメソッドで、 Base64 エンコーディングでエンコードされたデータの文字列をデコードします。 Window.btoa() メソッドを使用して、通信に問題が発生する可能性のあるデータをエンコードして送信し、送信した後に atob() メソッドを使用して再度デコードすることができます。例えば、ASCII の 0 から 31 までのコードような制御文字をエンコードして送信し、デコードすることができます。
Uint8Array.fromBase64() メソッドを使用することも検討してください。このメソッドは、base64 エンコードされた文字列から Uint8Array オブジェクトを作成します。その結果、生のバイト列を含む文字列よりも作業しやすい、バイト配列が生成されます。
対応ブラウザ
| 機能 | デスクトップ | モバイル | ||||
|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Safari | Chrome Android | Safari iOS | |
| 4 | 12 | 1 | 3 | 18 | 1 | |
worker_support 労働者で利用可能 | 30 | 12 | 4 | 10 | 30 | 10 |
| btoa() は Window インターフェイスのメソッドで、 Base64 でエンコードされた ASCII 文字列をバイナリー文字列(すなわち、文字列のそれぞれの文字がバイナリーデータの各バイトとして扱われる文字列)から生成します。 | 4 | 12 | 1 | 3 | 18 | 1 |
worker_support 労働者で利用可能 | 30 | 12 | 4 | 10 | 30 | 10 |
基本構文
JAVASCRIPT
const encodedData = window.btoa("Hello, world"); // encode a string
const decodedData = window.atob(encodedData); // decode the string 実務での使いどころ
-
Base64 encoding and decoding の活用
atob() は Window インターフェイスのメソッドで、 Base64 エンコーディングでエンコードされたデータの文字列をデコードします。
注意点
- 古いブラウザでは対応していない場合がある。
実装メモ
- 一部の API はセキュアコンテキスト (HTTPS) やユーザー操作起点を必要とする。利用前に要件を確認すること。