【Node.js24.x】Object::btoa()メソッドの使い方
btoaメソッドの使い方について、初心者にもわかりやすく解説します。
作成日: 更新日:
基本的な使い方
btoaメソッドは、文字列をBase64方式でエンコードするメソッドです。このメソッドは「binary to ASCII」の略で、主にバイナリデータをテキスト形式に変換する際に使用されます。入力として与えられた文字列の各文字をASCIIまたはLatin-1として扱い、そのバイナリ表現をBase64の文字セット(A-Z, a-z, 0-9, +, /, =)を用いてエンコードします。その結果、ASCII文字のみで構成される新しい文字列が返されます。
例えば、画像データや小さなファイルをWebブラウザで直接表示するためにURLに埋め込んだり、HTTPヘッダーなどで非ASCII文字やバイナリデータを安全に転送したりする場合に利用されます。
注意点として、btoaメソッドは、入力文字列がASCII文字またはLatin-1エンコーディングの範囲外の文字(例えば日本語のようなUnicode文字)を含んでいる場合、エラーを発生させます。これは、btoaがバイトデータを直接扱うのではなく、文字列の各文字を単一のバイトとして解釈しようとするためです。Node.js環境においてUnicode文字列をBase64エンコードする際には、通常Buffer.from(string, 'utf8').toString('base64')のようなBufferモジュールを使用する方法が推奨されます。このメソッドは、Objectクラスに所属し、主にブラウザ互換性のために提供されています。
構文(syntax)
1const originalString = "Hello, Node.js!"; 2const encodedString = btoa(originalString);
引数(parameters)
input
- input: string: Base64エンコードしたい文字列
戻り値(return)
string
btoaメソッドは、引数として与えられた文字列をBase64エンコードした結果を文字列として返します。