numberFormat Untuk Javascript
Dalam artikel ini saya akan beritahu Anda bagaimana cara membuat fungsi numberFormat didalam javascript.
Share
numberFormat untuk javascript
Dalam artikel ini kita akan membahas bagaimana cara membuat number format dengan menggunakan pure javascript, nah jika Anda datang dari php programming, Anda pasti sudah terbiasa dengan yang namanya fungsi number_format()
dalam bahasa tersebut, namun untuk javascript sayang nya itu tidak ada, kecuali Anda memakai yang namanya third-party package.
Baik, berikut adalah snippet yang bisa Anda gunakan.
export const numberFormat = (number, decimals, dec_point, thousands_sep) => { number = (number + '').replace(/[^0-9+\-Ee.]/g, ''); var n = !isFinite(+number) ? 0 : +number, prec = !isFinite(+decimals) ? 0 : Math.abs(decimals), sep = typeof thousands_sep === 'undefined' ? ',' : thousands_sep, dec = typeof dec_point === 'undefined' ? '.' : dec_point, s = '', toFixedFix = function (n, prec) { var k = Math.pow(10, prec); return '' + Math.round(n * k) / k; }; // Fix for IE parseFloat(0.55).toFixed(0) = 0; s = (prec ? toFixedFix(n, prec) : '' + Math.round(n)).split('.'); if (s[0].length > 3) { s[0] = s[0].replace(/\B(?=(?:\d{3})+(?!\d))/g, sep); } if ((s[1] || '').length < prec) { s[1] = s[1] || ''; s[1] += new Array(prec - s[1].length + 1).join('0'); } return s.join(dec); };
jsCopy
Untuk lebih jelas saja, Anda bisa mengetahui beberapa tipe data untuk parameternya. Anda bisa tambahkan tepat diatas function tersebut.
// @param {string} number // @param {string} decimals // @param {string} dec_point // @param {string} thousands_sep // @return {string} export const numberFormat = (number, decimals, dec_point, thousands_sep) => { ...
jsCopy
Nah, ketika Anda ingin menggunakannya, simple dengan cara.
numberFormat(100000) // 100,000
jsCopy
Jika Anda ingin merubah decimal, atau pun seperator dari angka tersebut, bisa dengan cara seperti ini.
numberFormat(100000, 0, 0, '.') // 100.000
jsCopy
Semoga bermanfaat, jangan lupa untuk berbagi dengan teman, tekan tombol love untuk bookmark.