Every country writes it differently
One lakh in Nepal is 1,00,000; in the US it's 100,000; in Germany 100.000. Dates and money vary too. The built-in Intl API formats for any language and region — no hand-written rules.
Numbers, money, dates, lists
console.log(new Intl.NumberFormat("en-IN").format(1234567));
console.log(new Intl.NumberFormat("en-US").format(1234567));
const rupees = new Intl.NumberFormat("en-IN", { style: "currency", currency: "NPR" });
console.log(rupees.format(2500.5));
const d = new Date(2026, 9, 21);
console.log(new Intl.DateTimeFormat("en-GB", { dateStyle: "long" }).format(d));
console.log(new Intl.ListFormat("en", { type: "conjunction" }).format(["momo", "chiya", "sel roti"]));
const rtf = new Intl.RelativeTimeFormat("en", { numeric: "auto" });
console.log(rtf.format(-1, "day"), "·", rtf.format(3, "week"));Create a formatter once and reuse it — building one is slower than using it.