var c = (num.toString().indexOf ('.') !== -1) ? num.toLocaleString() : num.toString().replace(/(\d)(?=(?:\d{3})+$)/g, '$1,')
return c
}
console.log(this.numFormat(20181029.120))
//格式化钱数,三位加一逗号
function toThousands(number) {
number = number +""
number = number.replace(/\,/g, "")
if(isNaN(number) || number == "")return ""
number = Math.round(number * 100) / 100
if (number <0)
return '-' + outputdollars(Math.floor(Math.abs(number) - 0) + '') + outputcents(Math.abs(number) - 0)
else
return outputdollars(Math.floor(number - 0) + '') + outputcents(number - 0)
}
//格式化金额
function outputdollars(number) {
if (number.length <= 3)
return (number == '' ? '0' : number)
else {
var mod = number.length % 3
var output = (mod == 0 ? '' : (number.substring(0, mod)))
for (i = 0i <Math.floor(number.length / 3)i++) {
if ((mod == 0) &&(i == 0))
output += number.substring(mod + 3 * i, mod + 3 * i + 3)
else
output += ',' + number.substring(mod + 3 * i, mod + 3 * i + 3)
}
return (output)
}
}
function outputcents(amount) {
amount = Math.round(((amount) - Math.floor(amount)) * 100)
return (amount <10 ? '.0' + amount : '.' + amount)
}
//代码如下所示:function convertCurrency(money) {
//汉字的数字
var cnNums = new Array('零', '壹', '贰', '叁', '肆', '伍', '陆', '柒', '捌', '玖')
//基本单位
var cnIntRadice = new Array('', '拾', '佰', '仟')
//对应整数部分扩展单位
var cnIntUnits = new Array('', '万', '亿', '兆')
//对应小数部分单位
var cnDecUnits = new Array('角', '分', '毫', '厘')
//整数金额时后面跟的字符
var cnInteger = '整'
//整型完以后的单位
var cnIntLast = '元'
//最大处理的数字
var maxNum = 999999999999999.9999
//金额整数部分
var integerNum
//金额小数部分
var decimalNum
//输出的中文金额字符串
var chineseStr = ''
//分离金额后用的数组,预定义
var parts
if (money == '') { return '' }
money = parseFloat(money)
if (money >= maxNum) {
//超出最大处理数字
return ''
}
if (money == 0) {
chineseStr = cnNums[0] + cnIntLast + cnInteger
return chineseStr
}
//转换为字符串
money = money.toString()
if (money.indexOf('.') == -1) {
integerNum = money
decimalNum = ''
} else {
parts = money.split('.')
integerNum = parts[0]
decimalNum = parts[1].substr(0, 4)
}
//获取整型部分转换
if (parseInt(integerNum, 10) > 0) {
var zeroCount = 0
var IntLen = integerNum.length
for (var i = 0 i < IntLen i++) {
var n = integerNum.substr(i, 1)
var p = IntLen - i - 1
var q = p / 4
var m = p % 4
if (n == '0') {
zeroCount++
} else {
if (zeroCount > 0) {
chineseStr += cnNums[0]
}
//归零
zeroCount = 0
chineseStr += cnNums[parseInt(n)] + cnIntRadice[m]
}
if (m == 0 && zeroCount < 4) {
chineseStr += cnIntUnits[q]
}
}
chineseStr += cnIntLast
}
//小数部分
if (decimalNum != '') {
var decLen = decimalNum.length
for (var i = 0 i < decLen i++) {
var n = decimalNum.substr(i, 1)
if (n != '0') {
chineseStr += cnNums[Number(n)] + cnDecUnits[i]
}
}
}
if (chineseStr == '') {
chineseStr += cnNums[0] + cnIntLast + cnInteger
} else if (decimalNum == '') {
chineseStr += cnInteger
}
return chineseStr
}