计算包括小数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了计算包括小数相关的知识,希望对你有一定的参考价值。

我是javascript的新手,我从这个网站上的另一个问答中获得了大部分代码,效果很好!唯一的问题是代码不计算小数!如何获取此代码来计算小数?

<table> <tr class=r1> 
<th class=d1>1-24</th> 
<th class=d2>25-49</th> 
<th class=d2>50-99</th> 
<th class=d2>100-499</th> 
<th class=d2>500 = Offert</th> 
        <tr class=r1> 
        <td class=d1 id=A>99,00:-</td> 
        <td class=d2 id=B></td> 
        <td class=d2 id=C></td> 
        <td class=d2 id=D></td> 
        <td class=d2> </td> </tr>
</table>

这是我必须制定支架价格的表格。

这是Javascript:

(function(){
// put all your JavaScript in a closure so you don't pollute the global namespace
  function extract_float_from_price ( price ) {
    return parseFloat( price.replace(/:*-/,'') );
  }

  function evaluate_savings ( ) {
    var A = extract_float_from_price( $('#A').text() );

    $('#B').text( parseInt(A * 0.96 ) + ':-' );
        $('#C').text( parseInt(A * 0.92 ) + ':-' );
        $('#D').text( parseInt(A * 0.88 ) + ':-' );
  }

  $( evaluate_savings ); // binds to Dom Ready
})()

请帮我看一下代码,以更精确的价格显示小数。

答案

需要立即学习的东西,以便将来获得更好的响应,这是JavaScript而不是Java。它们看起来很相似,但绝不是一样的。互联网上有很多关于差异的讨论。

在回答您的问题时,请尝试使用JavaScript函数parseFloat而不是parseInt

另一答案

你需要做两件事

  • 使用parseFloat
  • ,取代.。是javascript中的逗号分隔符。

所以,

// get the part of the text that should be parsed
var A = /[d,.]+/.exec($('#A').text())[0];

// replace any , with .
A = A.replace(",",".")

// parse the string into a Number
A = A.parseFloat(A, 10);

// output the result
$('#B').text( (A * 0.96)  + ':-' );

应该适合你

另一答案

在以下语句中使用parseFloat而不是parseInt

    $('#B').text( parseFloat(A * 0.96 ) + ':-' );
    $('#C').text( parseFloat(A * 0.92 ) + ':-' );
    $('#D').text( parseFloat(A * 0.88 ) + ':-' );

顺便说一句,一些答案帮助你做了一些事情很棒,但你也应该尝试理解代码的作用以及它在使用时的作用。

而且,Java != Javascript

更新:

要绕数字使用toFixed。你可能想做:

$('#B').text( parseFloat(A * 0.96 ).toFixed(2) + ':-' );

等等

以上是关于计算包括小数的主要内容,如果未能解决你的问题,请参考以下文章

获取码值和进制转换系统(包括正负数小数)

kotlin-从一个片段更改多个片段的小数位

java 用字符串实现加减法 包括两位小数 金额格式化 可以为正负 跪求!!!!!!

获取码值(各种类型字符(中英)的ASCII)和进制转换系统(包括正负数小数)

java的计算保留N位小数点问题

Java 数字格式