Как написать числа прописью javascript?
Готовое: meritt.github.io/rubles
Логика замен будет слишком сложной, сделай лучше табличку от нуля до 19, а также все десятки (двадцать ... восемдесят, девяносто) туда внеси и сотни (двести, триста ...).

Еще вероятно понадобится учитывать род, типа тридцать два / тридцать две.

Вот похожее на английсом, можете посмотреть как устроено
https://www.npmjs.com/package/num-words