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

メールアドレスが公開されることはありません。 が付いている欄は必須項目です


reCaptcha の認証期間が終了しました。ページを再読み込みしてください。

関連記事

no image

JavaScriptで値が素数か判定する

以下のコードでは、渡された値が素数か判定する関数isPrimeNumberを定義しています。 Number.isIntegerで引数が整数か判定し、その後1から引数で渡された値の範囲で引数の値を割って …

no image

D3.jsベースのJavaScriptチャートライブラリC3.jsの使い方

公式サイト https://c3js.org/ サンプルコード Getting Startedページのサンプルを動かしてみます。https://c3js.org/gettingstarted.html …

no image

ブラウザのコンソールからページ内の埋め込みリストを確認する

ブラウザのコンソールにdocument.embedsの内容を出力すると、現在の文書内にある埋め込みのリストが返されます。 console.log(document.embeds)

no image

JavaScriptでブラウザ履歴の前のページや次のページへ移動する

前のページへ window.history.back() 次のページへ window.history.forward() 指定ページ数前へ window.history.go関数の引数にマイナスの数値 …

no image

input要素で選択したファイルのバイナリデータをFile APIで表示する

サンプルコード input要素で選択したファイルのバイナリデータを16進数表記でpre要素に出力します。 <input type="file"> <pre> …