3テラバイト

プログラム関連備忘録サイト。主にゲーム。

JavaScript

JavaScriptでテキストをエンコードする

投稿日:

UTF-8エンコード

TextEncoder.prototype.encode()

TextEncoderオブジェクトを生成、encodeメソッドにUSVString値を渡すと、エンコードされたUint8Arrayが返ってきます。

const encoder = new TextEncoder();
const encoded = encoder.encode('A');
console.log(encoded);

TextEncoder.prototype.encodeInto()

現在Experimentalなメソッドですが、引数にエンコードするUSVString値の他、エンコード後の値を格納するUint8Arrayも渡すencodeIntoもあります。

こちらは戻り値にread, writtenの2つのメンバを持つdictionaryが返ってきます。
readにはUTF-8へ変換されたソースのUTF-16単位のコード数が、
writtenには出力先Uint8Arrayの中で変更されたバイト数が格納されています。

const encoder = new TextEncoder;
let u8array = new Uint8Array(4);
let ret = encoder.encodeInto("A", u8array);
console.log("read : " + ret.read);
console.log("written : " + ret.written);
console.log(u8array);

UTF-8以外のエンコード

https://github.com/inexorabletash/text-encoding

リンク

TextEncoder – Web API | MDN
https://developer.mozilla.org/ja/docs/Web/API/TextEncoder

-JavaScript


comment

メールアドレスが公開されることはありません。

関連記事

no image

JavaScriptで指定時間ごとに処理を実行する

指定時間ごとに処理を実行する setInterval関数の第一引数に指定時間経過ごとに実行したいコールバック関数を、第二引数に待機時間をミリ秒で指定します。 以下の例では関数callbackFuncを …

no image

JavaScriptで処理時間を計測する

performance.now関数を用いて処理時間を計測します。計測したい処理の実行前後にperformance.now関数でtime originからの経過時間を取得し、その差を比較します。 DOM …

no image

JavaScriptで位置座標を取得する

navigator.geolocation.getCurrentPosition関数で取得できます。 引数には成功時、失敗時のコールバック関数と、オプションを渡します。 <html> &l …

no image

JavaScriptでMath.jsを用いて階乗の計算をする

math.permutations関数の引数に任意の数値を渡すと、その階乗の値が返されます。また、第二引数にサブセットの値を渡すと、そこまでの計算結果が返されます。 <html> < …

no image

JavaScriptで数値を2進数や16進数の文字列に変換する

toString関数の引数に基数の値を指定すると、その形式に変換された文字列が返されます。基数は2~36までの間で指定可能です。 16進数に変換する この例では30を16進数に変換した1eが出力されま …