Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2008/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 利润计算(小数点后两位)_Javascript - Fatal编程技术网

Javascript 利润计算(小数点后两位)

Javascript 利润计算(小数点后两位),javascript,Javascript,在我的脚本中,我运行这个函数来计算MySQL数据库中products表中条目的利润。相关领域 定义为十进制10,2。这是一个销售平台,我希望在向系统中添加新产品时,利润栏能够以两位小数计算。比如售价=50.60,原价=40.20,所以利润栏应该可以给我10.40作为答案。因此50.60-40-20 这就是我使用的函数 function sum() { var txtFirstNumberValue = document.getElementById('txt1').value;

在我的脚本中,我运行这个函数来计算MySQL数据库中products表中条目的利润。相关领域 定义为十进制10,2。这是一个销售平台,我希望在向系统中添加新产品时,利润栏能够以两位小数计算。比如售价=50.60,原价=40.20,所以利润栏应该可以给我10.40作为答案。因此50.60-40-20

这就是我使用的函数

function sum() {

        var txtFirstNumberValue = document.getElementById('txt1').value;
        var txtSecondNumberValue = document.getElementById('txt2').value;
        var result = parseInt(txtFirstNumberValue) - parseInt(txtSecondNumberValue);
        if (!isNaN(result)) {
            document.getElementById('txt3').value = result;

        }
这些是我用来添加新产品的脚本,其中销售价格表示函数中的txt1。其中,原价和利润列分别代表函数中的txt2和txt3

<span>Selling Price : </span>
<input type="text" id="txt1" style="width:265px; height:30px;" name="price" onkeyup="sum();" Required><br> 
<span>Original Price : </span>
<input type="text" id="txt2" style="width:265px; height:30px;" name="o_price" onkeyup="sum();" Required><br>
 <span>Profit : </span>
<input type="text" id="txt3" style="width:265px; height:30px;" name="profit" readonly><
我的脚本工作正常,但这不是我想要的。“利润”列不能从另一个十进制值中减去小数,因此,它只能以整数显示结果。
我希望如果售价=50.60,原价=40.20,利润栏应该能给我10.40作为答案。因此,50.60-40-20。

您的问题是需要使用parseFloat,而不是parseInt,才能将输入用作浮点数。您还应该在输出上使用toFixed2,以确保它四舍五入到小数点后两位

函数和{ var txtFirstNumberValue=document.getElementById'txt1'。值; var txtSecondNumberValue=document.getElementById'txt2'。值; var result=parsefloattxtflastnumbervalue-parsefloattxtssecondnumbervalue; 如果!是结果吗{ document.getElementById'txt3'.value=result.toFixed2; } } 售价: 原价: 利润:
工作正常。但结果并没有显示在小数点后两位。利润不能从另一个十进制值中减去一个十进制值,我需要如何做到这一点的帮助。