php number format for javascript

munilive
munilive

PHP 함수로 존재하는 number_format 함수를 Javascript 함수로 구현하였습니다.
사용방법은 php와 동일합니다.

/**
 * PHP 함수 number_format 같이 천자리마다 ,를 자동으로 찍어줌
 * @param num number|string : 숫자
 * @param decimals int default 0 : 보여질 소숫점 자리숫
 * @param dec_point char default . : 소수점을 대체 표시할 문자
 * @param thousands_sep char default , : 천자리 ,를 대체 표시할 문자
 * @returns {string}
 */
function number_format(num, decimals, dec_point, thousands_sep) {
  num = parseFloat(num);
  if (isNaN(num)) return '0';

  if (typeof decimals == 'undefined') decimals = 0;
  if (typeof dec_point == 'undefined') dec_point = '.';
  if (typeof thousands_sep == 'undefined') thousands_sep = ',';
  decimals = Math.pow(10, decimals);

  num = num * decimals;
  num = Math.round(num);
  num = num / decimals;

  num = String(num);
  var reg = /(^[+-]?\d+)(\d{3})/;
  var tmp = num.split('.');
  var n = tmp[0];
  var d = tmp[1] ? dec_point + tmp[1] : '';

  while (reg.test(n)) n = n.replace(reg, '$1' + thousands_sep + '$2');

  return n + d;
}
munilive

munilive

Backend Application Developer

Share

Comments

Related Posts

JQuery : 클래스 이름만으로 페이지 전체에 롤오버 이미지 쉽게 적용하기

JQuery : 클래스 이름만으로 페이지 전체에 롤오버 이미지 쉽게 적용하기

작업중에 얻은 소스를 변경한것. 기존에는 지정한 파일 확장자의 이미지 만을 사용했다면 변경한 것에는 이미지 파일에 상관 없이 클래스명이 일때 무조건 확장자 앞에 의 유무에…

munilive munilive ·
datepicker 시작일과 종료일 설정 시 사용하기 좋은 팁

datepicker 시작일과 종료일 설정 시 사용하기 좋은 팁

웹 프로그래밍을 하다 보면 가끔 시작일과 종료일을 입력받는 프로그램을 제작하곤 한다. 사용자에게 날짜를 입력받아야 하는데 텍스트 박스만 떡하니 놔두면 사용자가 제대로 된 데이터를…

munilive munilive ·
javascript foreach 사용하기

javascript foreach 사용하기

에서 배열에 담긴 와 를 가져오기 위해서는 for 문을 아래와 같이 이용하면 PHP에서 사용하는 와 같은 효과를 얻을 수 있다. 덤으로 배열에 담긴 값을 셀렉트박스에 추가 하는…

munilive munilive ·