カタカナに変換・ひらがなに変換・半角文字に変換

var toHiragana = (function ( reg, func ) {
  return function ( str, sw ) {
    sw && ( str = str.replace( reg.toKA, 'カ' ).replace( reg.toKE, 'ケ' ) );
    return str.replace( reg.toKANA, func )
  };
})(
    {
      'toKA': /ヵ/g,
      'toKE': /ヶ/g,
      'toKANA': /([ァ-ン])/g
    },

    function ( c ) {
      return String.fromCharCode( c.charCodeAt(0) - 96)
    }
  )


var toKatakana = (function ( reg, func ) {
  return function ( str ) {
    return str.replace( reg, func );
  };
})(
    /([ぁ-ん])/g,
    function (c){ return String.fromCharCode(c.charCodeAt(0) + 96) } 
  );



var toHankaku = function ( str ) {
  return str.replace(/”/g,'"').replace(/’/g,"'").replace(/([!-〜 ])/g,
    function (char){ return String.fromCharCode(char.charCodeAt(0) - 65248)} );
};