[全角 ⇔ 半角] 関数

全角の英数字を半角に変換します。
半角の英数字を全角に変換します。
【全角 ⇒ 半角】


【Source Code】
<script type="text/javascript">
<!--
String.prototype.toChar_8 = function()
{   return this.replace(/[A-Za-z0-9]/g, function(s)
    {   return String.fromCharCode(s.charCodeAt(0) - 0xFEE0);
    });
}
var text = "Abc012";
document.write(text + "<br>");
document.write(text.toChar_8());
// -->
</script><br>

スマホなどでは、全角文字に設定されているケースも多く、全角文字を半角文字に変換するプログラムを作成します。
全角 ⇒ 半角変換の関数 toChar_8() です。
String.prototype.toChar_8 = function()
{   return this.replace(/[A-Za-z0-9]/g, function(s)
    {   return String.fromCharCode(s.charCodeAt(0) - 0xFEE0);
    });
}
【半角 ⇒ 全角】


【Source Code】
<script type="text/javascript">
<!--
String.prototype.toChar_16 = function()
{   return this.replace(/[A-Za-z0-9]/g, function(s)
    {   return String.fromCharCode(s.charCodeAt(0) + 0xFEE0);
    });
}
var text = "Xyz789";
document.write(text + "<br>");
document.write(text.toChar_16());
// -->
</script><br>

半角 ⇒ 全角変換の関数 toChar_16() です。
String.prototype.toChar_16 = function()
{   return this.replace(/[A-Za-z0-9]/g, function(s)
    {   return String.fromCharCode(s.charCodeAt(0) + 0xFEE0);
    });
}
【全角 ⇒ 半角 一般的な関数として作成】


【Source Code】
「全角 ⇒ 半角」の変換を一般的な関数で定義してみました。
一般的な関数の方が解りやすいでしょうか?
<script type="text/javascript">
function toChar_8(s)
{   return s.replace(/[A-Za-z0-9]/g, function(s)
    {   return String.fromCharCode(s.charCodeAt(0) - 0xFEE0);
    });
}
var text = "Abc012";
document.write(text + "<br>");
document.write(toChar_8(text));
</script><br>

前田稔の超初心者のプログラム入門
超初心者のプログラム入門(JavaScript)