Merubah Format Angka Menjadi Mata Uang (Currency) di JavaScript

Ngulik Kode - Saat kalian bekerja dengan data dari API, kalian akan mendapatkan data ini dalam beberapa format umum. Misalnya, jika kalian sedang membangun toko online atau e-commerce, kalian mungkin memiliki data seperti harga.


Data harga ini bisa berupa angka umum seperti 17500 atau angka lainnya seperti contoh di bawah ini:



Kalian tidak ingin memasukkan angka langsung ke aplikasi atau halaman web kalian karena akan sulit dipahami oleh user.

Bahkan jika kalian menambahkan tanda mata uang, itu tidak menyelesaikan masalah karena kalian ingin menambahkan koma dan desimal di posisi yang benar. Kalian juga ingin setiap output harga berdasarkan mata uang dengan format yang tepat.

Misalnya, 25750 akan menjadi Rp.25.750,00 (Rupiah) atau $25,750.00 (US Dollar) dan seterusnya, tergantung pada mata uang yang kalian tentukan. Dan kalian dapat mengonversi angka-angka ini menjadi mata uang menggunakan metode Intl.NumberFormat() dalam JavaScript.

Berikut adalah contohnya:



Pada artikel ini, saya akan membantu kalian untuk memahami setiap opsi di atas, apa yang dilakukan codingan tersebut, dan cara menggunakan metode ini dengan benar untuk memformat angka sebagai mata uang.


Cara Menggunakan Intl.NumberFormat() Untuk Memformat Angka Sebagai Mata Uang

Kalian bisa menggunakan konstruktor Intl.NumberFormat() untuk membuat objek Intl.NumberFormat yang menggunakan pemformatan angka yang sensitif, seperti format mata uang.

Konstruktor ini mengambil dua parameter utama, locale dan options. Keduanya opsional.


Perhatikan bahwa Intl.NumberFormat() dapat dipanggil dengan atau tanpa new. Keduanya akan membuat instance Intl.NumberFormat baru.


Ketika kalian menggunakan konstruktor Intl.NumberFormat() tanpa menambahkan locale atau option apapun, maka hanya akan memformat angka dengan menambahkan koma.


Kalian tidak mau pemformatan angka biasa seperti di atas. Kalian ingin memformat angka-angka ini sebagai mata uang, sehingga mengembalikan simbol mata uang dengan pemformatan yang tepat tanpa harus digabungkan secara manual.


Argumen Pertama: Locales


Locale adalah parameter opsional yang dapat diteruskan sebagai string. Ini mewakili wilayah geografis, politik, atau budaya tertentu. Itu hanya memformat angka berdasarkan lokal dan bukan pemformatan mata uang.



Kalian akan melihat bahwa angka atau harga sekarang diformat berdasarkan locale.


Argumen Kedua: Options(Style, Currency, dll.)


Ini adalah parameter utama dan kalian bisa menggunakannya untuk memformat mata uang. Ini adalah objek JavaScript yang menyimpan parameter lain seperti:

  • style: kalian menggunakan ini untuk menentukan jenis pemformatan yang kalian mau. Ini mengambil nila-nilai seperti desimal, mata uang, dan unit. Pada artikel ini, kalian akan menggunakan pemformatan mata uang.
  • currency: option lain adalah currency. Kalian bisa menggunakan option ini untuk menentukan mata uang yang kalian ingin format, seperti 'IDR', 'USD', 'GBP', 'EUR', dan masih banyak. Ini juga akan membantu memberikan simbol pada posisi yang sesuai berdasarkan locale.


Ada opsi lain yang mungkin akan jarang kalian gunakan, yaitu useGrouping, yang mana digunakan untuk menggabungkan angka dengan koma (atau titik untuk beberapa locale). Ini adalah boolean, secara default sudah diset ke true. Ini kenapa output kalian memiliki sebuah koma atau titik pada artikel ini. (seperti Rp 150.000,00)



Option lain adalah maximumSignificantDigits. Kalian bisa gunakan ini untuk membulatkan variabel price kalian berdasarkan jumlah digit signifikan yang telah kalian tentukan. Contoh, ketika kalian set nilainya ke 3, 150.000,00 akan menjadi 150.000



Penutup


Sekarang kalian sudah mempelajari cara memformat angka menjadi mata uang tanpa menggunakan library. Keren!


Semoga artikel ini bermanfaat dan kalian juga bisa banget share artikel ini ke siapapun ya. Bagi-bagi ilmu supaya kalian juga ngga lupa sama ilmunya. Terima kasih!

0 comments

Posting Komentar