js这段代码什么意思
发布网友
发布时间:2022-05-16 18:32
我来回答
共2个回答
热心网友
时间:2023-11-19 20:22
对现金格式字串的格式化。
num = num.toString().replace(/\$|\,/g,'');//去掉字串里的全部 $ 和 ,
if(isNaN(num))
num = "0"; //如果num不是一个数值,那么让它为字串0
sign = (num == (num = Math.abs(num)));//取num的符号,并使用num取自己绝对值
num = Math.floor(num*100+0.50000000001);//乘以100再加上0.5000000001(这是为了第三位小数进行舍入。)
cents = num%100;//取num 除以100的余数,也就是原来数据的小数点后两位。
um = Math.floor(num/100).toString();//取得原来num的整数部分
if(cents<10)
cents = "0" + cents;//将小数部分格式确定为两位(补零),
for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
num = num.substring(0,num.length-(4*i+3))+','+
num.substring(num.length-(4*i+3));//整数部分每三位数加一个,分隔
return (((sign)?'':'-') + num + '.' + cents);// 再加上符号 小数部分等 返回格式化后的 现金格式
热心网友
时间:2023-11-19 20:22
function formatCurrency(num) 定义一个格式化字符串的方法
num = num.toString().replace(/\$|\,/g,''); 替换掉 特殊符号
if(isNaN(num)) 判断 格式化后的字符串 是否为 阿拉伯数字
num = "0"; 如果不是 则 给这个字符串 赋值 为 字符串:0
sign = (num == (num = Math.abs(num))); 为变量 sign 赋值为:num == (num = Math.abs(num)) 判断语句的结果 返回布尔值,即 真或者假; num =Math.abs(num) 取 绝对值
num = Math.floor(num*100+0.50000000001); 求一个最接近它的整数,它的值小于或等于这个浮点数
cents = num%100 %是求num的余数
for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++) 循环条件,为 num 的 字符长度-循环递增值+1 除以三 的最接近它的整数,然后 循环变量 i 递增
num = num.substring(0,num.length-(4*i+3))+','+ 截取字符串 后 加上 逗号
num.substring(num.length-(4*i+3)); 返回一个全新的字符串 顺序
return (((sign)?'':'-') + num + '.' + cents); 返回一个固定格式字符串