Rupiah
- Angka
- 1500000.5
- Format
- Rp1.500.000,50
- Terbilang
- satu juta lima ratus ribu rupiah lima puluh sen
Jalan di browser kamu.
Fungsi
Section titled “Fungsi”| Go | TypeScript | Hasil |
|---|---|---|
rupiah.Format(a, opts) |
rupiah.format(n, opts?) |
Rp1.500.000,50 |
rupiah.Parse(s) |
rupiah.parse(s) |
Nominal (Go: Amount dalam sen, TypeScript: number dalam rupiah) |
rupiah.Valid(s) |
rupiah.isValid(s) |
Apakah s bisa di-parse |
rupiah.Terbilang(a) |
rupiah.terbilang(n) |
satu juta lima ratus ribu rupiah lima puluh sen |
Nominal
Section titled “Nominal”- Go memakai
rupiah.Amount,int64dalam sen, sehingga aritmetika selalu tepat:150_000 * rupiah.Rupiah + 50 * rupiah.Sen. - TypeScript memakai
numberdalam rupiah. Nominal dengan sen dibatasi di bawah 10 triliun (MAX_SEN_AMOUNT) supaya tetap tepat. Nominal bulat bisa sampai 999 triliun (MAX_AMOUNT).
Opsi format
Section titled “Opsi format”Go Options |
TypeScript | Efek |
|---|---|---|
Decimals |
decimals |
Selalu tampilkan sen: Rp2.000.000,00 |
OmitSymbol |
symbol: false |
Tanpa awalan Rp |
Tanpa Decimals, sen hanya ditampilkan jika tidak nol. Nominal negatif ditulis -Rp1.000.
Parsing
Section titled “Parsing”Parse paham cara orang Indonesia menulis nominal: awalan Rp, Rp., atau IDR (opsional), titik sebagai pemisah ribuan, koma sebelum sen, dan akhiran ,-. Rp 25.000,-, IDR 1.500.000,50, dan 25000 semuanya bisa di-parse. Input dibatasi 64 karakter.
length, charset, format (pemisah salah tempat, lebih dari dua digit sen), range (melebihi nominal yang didukung).
Contoh
Section titled “Contoh”package main
import ( "fmt"
"github.com/haikalmumtaz233/nusaindex/rupiah")
func main() { price := 1_500_000*rupiah.Rupiah + 50*rupiah.Sen
text, err := rupiah.Format(price, rupiah.Options{}) if err == nil { fmt.Println(text) }
plain, err := rupiah.Format(2_000_000*rupiah.Rupiah, rupiah.Options{Decimals: true, OmitSymbol: true}) if err == nil { fmt.Println(plain) }
fmt.Println(rupiah.Valid("Rp 25.000,-"))
amount, err := rupiah.Parse("Rp 25.000,-") if err == nil { fmt.Println(int64(amount / rupiah.Rupiah)) }
words, err := rupiah.Terbilang(price) if err == nil { fmt.Println(words) }}import * as rupiah from "nusaindex/rupiah";
const price = 1_500_000.5;
const text = rupiah.format(price);if (text.ok) { console.log(text.value);}
const plain = rupiah.format(2_000_000, { decimals: true, symbol: false });if (plain.ok) { console.log(plain.value);}
console.log(rupiah.isValid("Rp 25.000,-"));
const amount = rupiah.parse("Rp 25.000,-");if (amount.ok) { console.log(amount.value);}
const words = rupiah.terbilang(price);if (words.ok) { console.log(words.value);}Rp1.500.000,502.000.000,00true25000satu juta lima ratus ribu rupiah lima puluh sen© 2026 Haikal Mumtaz