jQueryでnumber_format
PHPのnumber_formatをjQueryで再現
jQuery
$(function () {
// $('#debug').append(getNumberFormat(1234.56));
// $('#debug').append(getNumberFormat(1234.56, 1));
// $('#debug').append(getNumberFormat(1234.56, 2));
// $('#debug').append(getNumberFormat(1234.56, 3));
});
/**
*
* Number Format
* @param {float} number
* @param {int} decimals
* @return {string}
*/
function getNumberFormat(number, decimals)
{
if (! decimals) {
var decimals = 0;
}
// 位をずらし四捨五入
var place = Math.pow(10, decimals);
var number = Math.round(number * place) / place;
// 整数と小数に分割
var num = number.toString().split('.');
// カンマ付与
var integer = num[0].replace(/([0-9]{1,3})(?=(?:[0-9]{3})+$)/g, '$1,');
var str;
if (num[1]) {
if (num[1].length < decimals) {
// 指定桁数まで0を追加
var zero = decimals - num[1].length;
for (var i = 0; i < zero; i++) {
num[1] = num[1] + '0';
}
}
str = integer + '.' + num[1];
} else {
str = integer;
}
return str;
}
サンプル