Kamis, 02 June 2022

    Fungsi numberFormat untuk Javascript: Panduan Lengkap

    Dalam artikel ini saya akan beritahu Anda bagaimana cara membuat fungsi numberFormat didalam javascript.

    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);
    };
    

    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) => {
    ...
    

    Nah, ketika Anda ingin menggunakannya, simple dengan cara.

    numberFormat(100000) // 100,000
    

    Jika Anda ingin merubah decimal, atau pun seperator dari angka tersebut, bisa dengan cara seperti ini.

    numberFormat(100000, 0, 0, '.') // 100.000
    

    Semoga bermanfaat, jangan lupa untuk berbagi dengan teman, tekan tombol love untuk bookmark.

    Karteil
    Destinasi Utama Belajar Online dengan Format Tulisan yang Elegan
    Kunjungi Sekarang

    Irsyad A. Panjaitan

    Let's start living like no one can help us in any event, so that when we are helped in certain times, it becomes a plus in itself.

    Go to Irsyad A. Panjaitan profile
    Support me
    SaweriaGithub