数字からひらがなへ

uochanがくだらないことをしているww

反応して書いて見た.

「"ろっ"ぴゃく」とか「"はっ"ぴゃく」とかの特殊な発音のところのスマートな書き方を模索してるみたいだけど,音便でルールがよくわからんのと大した組み合わせ数ではないので,1000までのおとを全部書いちゃう.

var toHiragana = function(int){
  var unit = ['', 'まん','おく','ちょう','けい'];
  var hatsuon=[['', 'いち','に','さん','よん','ご',
                'ろく','なな','はち','きゅう'],
               ['', 'じゅう','にじゅう','さんじゅう','よんじゅう','ごじゅう',
                'ろくじゅう','ななじゅう','はちじゅう','きゅうじゅう'],
               ['', 'ひゃく','にひゃく','さんびゃく','よんひゃく','ごひゃく',
                'ろっぴゃく','ななひゃく','はっぴゃく','きゅうひゃく'],
               ['', 'せん','にせん','さんぜん','よんせん','ごせん',
                'ろくせん','ななせん','はっせん','きゅうせん']];
  var digit = new Array();
  var pronoun = '';
  while(int){
    var m = int % 10;
    if(digit.length % 4 == 0) pronoun = unit[digit.length / 4] + pronoun;
    pronoun = hatsuon[digit.length % 4][m] + pronoun;
    digit.push(m);
    int = int / 10 | 0;
  }
  return pronoun;
}

Number.prototype.toHiragana = function(){
  return toHiragana(this);
};

var num = 35144124;
num.toHiragana();

ナベアツコードはまたこんど