繁体   English   中英

JavaScript的; 四舍五入,将点更改为逗号,并在三位数后设置点

[英]JavaScript; Round, change dot to comma, and set dot after three digits

我有这样的JavaScript代码:

var final_value = ($('select[name=somevalue1] option:selected').data('calc')-($('select[name=somevalue1] option:selected').data('calc')/100*$('select[name=somevalue2] option:selected').data('calc'))-($('select[name=somevalue1] option:selected').data('calc')-($('select[name=somevalue1] option:selected').data('calc')/100*$('select[name=somevalue2] option:selected').data('calc')))/100*$('select[name=somevalue3] option:selected').data('calc')).toFixed(2);

这将计算出我将输出的内容。 我需要做三件事。

  1. 改变. , ; 123,45而非123.45
  2. 回合“商务”,用逗号后的数字位数: 123,46而不是123,45738
  3. 在逗号前三位数后设置逗号; 1.234,45而非1234,45

我对toFixed(2)所做的第二件事。 我尝试在最后添加replace(",",".")第一件事。 但是这样做,我没有任何输出。

谁能帮我?

您将需要将数字转换为字符串以执行对字符串方法的访问,例如replace

var final_value = (42).toFixed(2).replace('.', ','); // excess code truncated

另外,您可能想验证操作顺序。 将变量名称分配给那些元素data值是明智的。 验证方程式的部分实际上是数字也是明智的。 如果未定义任何数据集,则可能会返回NaN,这会破坏整个表达式。

希望这可以帮助您继续进行第三项要求。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM