gpt4 book ai didi

javascript - 字符串 toFixed 用 javascript 吗?

转载 作者:行者123 更新时间:2023-11-28 10:18:00 24 4
gpt4 key购买 nike

我有一个数字,我需要将其格式化为货币,为此,我必须将我的数字转换为字符串并运行一个函数,这是有效的,但它显示为 X 位小数,是否可以使用“toFixed” ' 根本就在一根绳子上吗?我尝试过但没有运气,我不确定如何将字符串转回数字,我使用了 parseInt 只是它停在第一个字符,因为它没有读取超过我的定界符...

var amount = String(EstimatedTotal);
var delimiter = ","; // replace comma if desired
var a = amount.split('.',2)
var d = a[1];
var i = parseInt(a[0]);
if(isNaN(i)) { return ''; }
var minus = '';
if(i < 0) { minus = '-'; }
i = Math.abs(i);
var n = new String(i);
var a = [];
while(n.length > 3)
{
var nn = n.substr(n.length-3);
a.unshift(nn);
n = n.substr(0,n.length-3);
}
if(n.length > 0) { a.unshift(n); }
n = a.join(delimiter);
if(d.length < 1) { amount = n; }
else { amount = n + '.' + d; }
amount = minus + amount;

目前 amount 变量显示为 1,234,567.890123

感谢大家的帮助,

设法让它与此一起工作

amount = String(EstimatedTotal) 

amount += '';
x = amount.split('.');
x1 = x[0];
var rgx = /(\d+)(\d{3})/;
while (rgx.test(x1)) {
x1 = x1.replace(rgx, '$1' + ',' + '$2');
}
num=x1 ;

最佳答案

不确定你所说的货币是什么意思-

这会为千位分隔符添加逗号并强制保留两位小数

输入可以是带或不带逗号、减号和小数的数字字符串,也可以是数字

function addCommas2decimals(n){
n= Number(String(n).replace(/[^-+.\d]+/g, ''));
if(isNaN(n)){
throw new Error('Input must be a number');
}
n= n.toFixed(2);
var rx= /(\d+)(\d{3})/;
return n.replace(/^\d+/, function(w){
while(rx.test(w)){
w= w.replace(rx, '$1,$2');
}
return w;
});

}
var s= '1234567.890123'
addCommas2decimals(s)

/* returned value: (String)
1,234,567.89
*/

关于javascript - 字符串 toFixed 用 javascript 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6153382/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com