@dimdevs/nusantara
Version:
A utility toolkit for formatting and validating data in the Indonesian context. From currency and dates to bank lists and national ID validation.
34 lines (33 loc) • 1.06 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.numberToWordsId = numberToWordsId;
const satuan = [
'', 'satu', 'dua', 'tiga', 'empat', 'lima', 'enam', 'tujuh', 'delapan', 'sembilan'
];
function numberToWordsId(value) {
if (value === 0)
return 'nol';
if (value < 0 || value > 9999)
return 'di luar jangkauan';
const ribuan = Math.floor(value / 1000);
const ratusan = Math.floor((value % 1000) / 100);
const puluhan = Math.floor((value % 100) / 10);
const satu = value % 10;
return [
ribuan ? satuan[ribuan] + ' ribu' : '',
ratusan ? satuan[ratusan] + ' ratus' : '',
puluhan === 1
? value % 100 === 11
? 'sebelas'
: satu === 0
? 'sepuluh'
: satuan[satu] + ' belas'
: puluhan > 1
? satuan[puluhan] + ' puluh'
: '',
puluhan !== 1 ? satuan[satu] : '',
]
.filter(Boolean)
.join(' ')
.trim();
}