全角 ⇔ 半角

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


【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>

全角 ⇒ 半角変換の関数 toChar_8() を普通に定義してみました。
こちらの方が解りやすいでしょうか?
function toChar_8(s)
{   return s.replace(/[A-Za-z0-9]/g, function(s)
    {   return String.fromCharCode(s.charCodeAt(0) - 0xFEE0);
    });
}

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