JavaScriptライブラリjPrim(ジェイプリム)に少々機能を追加しました。そのなかで文字列の全角半角あるいはひらがなカタカナの変換ができると面白いと考え、文字列オブジェクトのメソッドにその機能を実装することに。
ネットを見てみるとすでにJavaScriptで全角半角変換する試みがいろいろ行われていて、自分もそれらを参考にしました。
DanKogai氏の記事 404 Blog Not found javascript – でも全角半角変換shogo4405さんのJavaScriptライブラリ 平仮名を片仮名にしたり。半角英数字を全角英数字にしたり。全角カタカナを半角カタカナに変換するJavaScript kana.js
英数字の全角半角は対称的な構造なのであまり苦労しなかったものの、ひらがなカタカナだと全角がひらカナ二種類に対し、半角はカタカナのみと非対称でやや扱いにくい感じでした。また、五十音以外の記号を見ると、半角カナのそれは全角に比べて少なく、正規表現でも濁点の判定が難しく例外的な処理が多くなりました。そのため力技っぽくなりパフォーマンスはあまりよくないです。
文字コードを使用した方がコードの見栄えがよく、また四則演算を適用できて何かと便利なので、以下のサイトで文字コードの対応を見ながらコード表を作りました。JavaScriptのメソッドで使う機会が多かったのはString.fromCharCodeメソッドで、これの引数に文字コード(数値)を入れると、その文字コードの文字に変換します。