JavaScriptのUnicodeのコードポイント値から文字を取得するサンプルです。fromCodePointを使用します。
目次
サンプル | fromCodePointとは |
Unicodeコードポイントから文字を取得する | |
fromCharCode(サロゲートペア文字列未対応) |
fromCodePointとは
String.fromCodePoint(Unicodeの数値[, ...[, Unicodeの数値]]) |
- Unicodeの文字コード(Unicodeコードポイント)から文字を生成します。
- サロゲートペア文字列に対応しています。
Unicodeコードポイントから文字を取得する
<script>
console.log(String.fromCodePoint(65, 66)); // AB
console.log(String.fromCodePoint(12354, 12356)); // あい
//サロゲートペア文字列
console.log(String.fromCodePoint(134071)); // 𠮷
const a = (134071).toString(16);
console.log(a); // 20bb7
</script>
2行目は、65が「A」で66が「B」になります。
4行目は、12354が「あ」で12356が「い」になります。
7行目は、サロゲートペア文字の「つちよし」ですが正常に文字が表示されています。
9行目は、16進数にしています。
文字コードは秀丸やサクラエディタで確認できます。
秀丸で見た場合
Unicodeコードポイントは、U+16進数で記述されます。
fromCharCode(サロゲートペア文字列未対応)
String.fromCharCode(Unicodeの数値[, ...[, Unicodeの数値]]) |
- Unicodeの文字コード(Unicodeコードポイント)から文字を生成します。
- サロゲートペア文字列に対応していません。
<script>
console.log(String.fromCharCode(65, 66)); // AB
console.log(String.fromCharCode(12354, 12356)); // あい
//サロゲートペア文字列
console.log(String.fromCharCode(134071)); // 文字化け
</script>
2行目は、65が「A」で66が「B」になります。
4行目は、12354が「あ」で12356が「い」になります。
7行目は、サロゲートペア文字の「つちよし」ですが対応していないので文字化けで表示されます。
以下はMDNのfromCodePointメソッドのリンクです。
https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/String/fromCodePoint
関連の記事
JavaScript 文字列から1文字を取得する(charAt)
JavaScript 文字コードを取得する(charCodeAt)
JavaScript 文字からUnicodeを取得(codePointAt)
UnicodeとUTF-16とUTF-8の違い(秀丸で文字コードを確認)