• HOME > 
  • JavaScript > 
  • Javascriptで文字のUnicode(UTF-16)を...

Javascriptで文字のUnicode(UTF-16)を取得する方法【charCodeAtとfromCharCode】

投稿日:

このページにはGoogleアドセンス広告とアフィリエイト広告が含まれています。

カテゴリー記事のアイキャッチ画像
広告
広告

テキストのUnicode(UTF-16)を取得するには?

Javascriptを使うと、日本語(テキスト)のUnicode(UTF-16)を取得したり、Unicode(UTF-16)をテキストに変換することが可能です。

下のフォームはJavascriptで作成したテキストとUnicode(UTF-16)の変換フォームです。左上のテキストボックスに文字を入力し「変換」を押せばUnicode(UTF-16)が取得できます。反対に右下のボックスに入力して変換を押せばテキストに変換できます。

テキスト Unicode(UTF-16)
テキスト Unicode(UTF-16)

ここからは、上のフォームのような取得変換処理を作る方法を解説していきます。

charCodeAtでテキストのUnicode(UTF-16)を取得する

まずはテキストをUnicode(UTF-16)に変換する方法です。取得には「charCodeAt」メソッドを使用します。

charCodeAtは次のように記述することでテキストのUnicode(UTF-16)を返します。

Javascript

var text = "本";
var result = text.charCodeAt();
console.log(result);//「本」のUnicode(UTF-16)は26412

charCodeAtが変換できるのは1文字のみです。対象のテキストが2文字以上の場合は、引数を入力することで何番目の文字を変換するか指定できます。(引数を記述しない場合は最初の文字を変換します)

Javascript

var text = "日本語";
var result = text.charCodeAt(2);//頭文字を0番目として2番目を変換
console.log(result);//「語」のUnicode(UTF-16)は35486

2文字以上のテキストを一括で変換させたい場合はループを用いて一文字づつ変換する処理を作ります。

Javascript

var text = "日本語";
var array = [];//変換したUnicode(UTF-16)を収める用の配列
for(var n = 0;n < text.length; n++){
    array[n] = text.charCodeAt(n);//一文字づつ変換して配列に収めていく
}
var result = array.join(",");//Unicode(UTF-16)を収めた配列をカンマ区切りの文字列にする
console.log(result);//「日本語」のUnicode(UTF-16)は26085,26412,35486

fromCharCodeでUnicode(UTF-16)をテキストに変換する

続いては反対にUnicode(UTF-16)をテキストに変換する方法です。Unicode(UTF-16)からテキストへの変換は「fromCharCode」メソッドを使用します。

fromCharCodeは次のように記述することでUnicode(UTF-16)に該当するテキストを返します。

Javascript

var num = "26412";
var result = String.fromCharCode(num);
console.log(result);//「26412」は「本」

fromCharCodeも一文字単位ごとにしか変換できないため、冒頭のフォームのようにカンマ区切りのUnicode(UTF-16)を一括でテキストに変換したい場合はループを用いて処理を作ります。

Javascript

var num = "26085,26412,35486";
var numArr = num.split(",");//Unicode(UTF-16)をカンマ区切りで配列に変換
var txtArr = [];//変換後の文字を収める用の配列
for(var n = 0; n < numArr.length; n++){
    txtArr[n] = String.fromCharCode(numArr[n]);//一文字づつ変換して配列に収める
}
var result = txtArr.join("");//テキストを収めた配列を文字列に変換
console.log(result);//「26085,26412,35486」は「日本語」

まとめ

以上がJavascriptのcharCodeAtとfromCharCodeを使ってテキストとUnicode(UTF-16)の変換を行う方法です。

Webサービスなどでデータ処理を行う際などに役に立つかもしれませんので是非覚えておいてください。

関連する記事

サムネイル

JSで郵便番号検索を実装できるライブラリ【yubinbang……

2024年04月12日
yubinbango.jsは郵便番号検索(郵便番号を打ち込むと住所が自動入力される)機能を簡単に実装できるのライブラリです。一実装方法がとても簡単なのでメールフォームなどに手軽に郵便番号検索機能を導入したい方におすすめです。
サムネイル

JSで特定の位置までスクロールされたら要素を固定する方法【s……

2024年04月12日
CSSのstickyのような動きをJSで実装する JavaScriptを使って、「ある要素がページ上部に当たるまでスクロールされたら、その位置でその要素を固定表 […]
サムネイル

JSで日付を表示するならtoLocaleDateString……

2024年03月15日
toLocaleDateStringは日付のフォーマットを少ないコードで簡潔に行えるメソッドです。20XX年X月X日というような年月日表示はもちろん、曜日の取得や西暦と和暦の変換まで即座に行ってくれます
サムネイル

JSで自動かな入力補完を実装できるライブラリ【jquery.……

2024年03月15日
jquery.autokana.jsは入力された日本語テキストのふりがな(フリガナ)を自動的に別の欄に入力してくれるJQueryのライブラリです。
サムネイル

JSでページ離脱時にメッセージを出す方法【beforeunl……

2024年03月15日
JavaScriptのイベントであるbeforeunloadを使えばページを離脱する前にメッセージを出して注意を促すことができます。
サムネイル

Javascriptのlightboxライブラリの使い方【画……

2023年10月01日
最終更新日:2023年09月12日
lightboxライブラリでできること Webサイトでは、ユーザーがクリックすると大きい画像が開くという表示方法が良く用いられます。 一覧では小さい画像を並べて […]
サムネイル

HTMLのチェックボックスに選択上限を設ける方法【Javas……

2023年10月01日
最終更新日:2023年09月28日
チェックボックスに選択上限を設けるには、JavaScriptを使ってチェックの数をカウントし設定した数を超えたらチェックできないようにします。