Spread the love
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  

Seperti yang kita tahu bahwa implementasi pengembangan web terbagi atas dua jenis bahasa, server-side dan client-side. Bahasa server-side yang paling populer saat ini adalah PHP. Sementara itu, trend implementasi web saat ini populer dengan penggunaan bahasa client-side  yaitu javascript. Hal tersebut dikarenakan penggunaan bahasa client-side akan mengurangi load pada sisi server. Oleh karena itu, banyak programmer menerapkan fungsi-fungsi yang biasanya di server-side (PHP) mulai digunakan di client-side (javascript). Namun jika di PHP fungsi-fungsi tersebut merupakan bawaan dari PHP, maka di javascript kita harus membuat secara manual fungsi tersebut.

Jika anda tidak mau susah-susah bagaimana membuat fungsi di javascript seperti layaknya di PHP, maka website phpjs.org dapat menjadi referensi anda.

Di phpjs.org terdapat kumpulan fungs-fungsi PHP yang populer, dari array, string, filesystem, math, dan sebagainya.

Misal untuk fungsi number_format pada PHP jika di implementasikan manual pada fungsi javascript menjadi seperti :

function number_format(number, decimals, dec_point, thousands_sep) {
  //  discuss at: http://phpjs.org/functions/number_format/
  // original by: Jonas Raoni Soares Silva (http://www.jsfromhell.com)
  // improved by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
  // improved by: davook
  // improved by: Brett Zamir (http://brett-zamir.me)
  // improved by: Brett Zamir (http://brett-zamir.me)
  // improved by: Theriault
  // improved by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
  // bugfixed by: Michael White (http://getsprink.com)
  // bugfixed by: Benjamin Lupton
  // bugfixed by: Allan Jensen (http://www.winternet.no)
  // bugfixed by: Howard Yeend
  // bugfixed by: Diogo Resende
  // bugfixed by: Rival
  // bugfixed by: Brett Zamir (http://brett-zamir.me)
  //  revised by: Jonas Raoni Soares Silva (http://www.jsfromhell.com)
  //  revised by: Luke Smith (http://lucassmith.name)
  //    input by: Kheang Hok Chin (http://www.distantia.ca/)
  //    input by: Jay Klehr
  //    input by: Amir Habibi (http://www.residence-mixte.com/)
  //    input by: Amirouche
  //   example 1: number_format(1234.56);
  //   returns 1: '1,235'
  //   example 2: number_format(1234.56, 2, ',', ' ');
  //   returns 2: '1 234,56'
  //   example 3: number_format(1234.5678, 2, '.', '');
  //   returns 3: '1234.57'
  //   example 4: number_format(67, 2, ',', '.');
  //   returns 4: '67,00'
  //   example 5: number_format(1000);
  //   returns 5: '1,000'
  //   example 6: number_format(67.311, 2);
  //   returns 6: '67.31'
  //   example 7: number_format(1000.55, 1);
  //   returns 7: '1,000.6'
  //   example 8: number_format(67000, 5, ',', '.');
  //   returns 8: '67.000,00000'
  //   example 9: number_format(0.9, 0);
  //   returns 9: '1'
  //  example 10: number_format('1.20', 2);
  //  returns 10: '1.20'
  //  example 11: number_format('1.20', 4);
  //  returns 11: '1.2000'
  //  example 12: number_format('1.2000', 3);
  //  returns 12: '1.200'
  //  example 13: number_format('1 000,50', 2, '.', ' ');
  //  returns 13: '100 050.00'
  //  example 14: number_format(1e-8, 8, '.', '');
  //  returns 14: '0.00000001'

  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)
        .toFixed(prec);
    };
  // 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);
}

Selain itu, misal fungsi split PHP untuk javascript :

function split(delimiter, string) {
  //  discuss at: http://phpjs.org/functions/split/
  // original by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
  //  depends on: explode
  //   example 1: split(' ', 'Kevin van Zonneveld');
  //   returns 1: {0: 'Kevin', 1: 'van', 2: 'Zonneveld'}

  return this.explode(delimiter, string);
}

Fungsi str_replace :

   for (j = 0, fl = f.length; j < fl; j++) {
      temp = s[i] + '';
      repl = ra ? (r[j] !== undefined ? r[j] : '') : r[0];
      s[i] = (temp)
        .split(f[j])
        .join(repl);
      if (count && s[i] !== temp) {
        this.window[count] += (temp.length - s[i].length) / f[j].length;
      }
    }
  }
  return sa ? s : s[0];
}

dan masih banyak lagi. Silahkan mengunjungi langsung ke http://phpjs.org/functions/

Related Posts
Laravel Db Snapshot : Melakukan Dump dan Load Database di Laravel dengan Cepat dan Mudah

Bagi yang mencari cara untuk melakukan dump dan load database melalui laravel dengan cepat dan mudah, bisa mencoba package laravel Read more

Laravel Mysql Logger : Menyimpan Log Error di Laravel ke MySQL

Biasanya atau secara default jika laravel mengalami error maka otomatis akan menyimpan log error tersebut ke dalam file storage/log/laravel.log. Terdapat Read more

Laravel Shield : Membuat dan Implementasi HTTP Basic Auth di Laravel Pada Middleware

Apa itu http basic auth? http basic auth merupakan implementasi keamanaan sederhana berupa username dan password pada url / route Read more

Cara Install Composer di Mac Os

Composer merupakan dependency manager untuk library PHP yang cross platform. Bisa digunakan di Linux, windows dan Mac. Berikut cara install Read more

Tagged : # #

Leave a Reply

Your email address will not be published. Required fields are marked *