javascript计算中的nan问题 [英] Nan problem in javascript calculation

查看:86
本文介绍了javascript计算中的nan问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

当我试图清空我的文本框时,我正在获得NaN的价值。为什么我得到这个。



我尝试了什么:



这是我的脚本:



$(#txtSC)。keyup(功能(){b / b




var myBox1 = document.getElementById('box1')。value;

var myBox2 = document.getElementById('box2')。value;

var mybox3 = document.getElementById('box3')。value;

var mybox4 = document.getElementById( 'txtDiscount')。value;

var mybox5 = document.getElementById('txtSC')。value;



var multply = myBox1 * myBox2;

var per =(multply * mybox3)/ 100;

var myResult = multply + per;

var withDisCount =(myResult * mybox4)/ 100;

var myDiscount = myResult - wi thDisCount;

var ShippingCost = myDiscount +(parseFloat(mybox5));



// var finalResult = Math.round(ShippingCost);

var result = document.getElementById('TotalAmt');



result.value = ShippingCost;









});





在最后一个文本框即mybox5上,当我试图在该文本框中退格时(手动将其设置为空)我的TotalAmt文本框显示NaN值。

i am getting value as NaN.when i try to blank my textbox .why i am getting this.

What I have tried:

THIS IS MY SCRIPT:

$("#txtSC").keyup(function () {


var myBox1 = document.getElementById('box1').value;
var myBox2 = document.getElementById('box2').value;
var mybox3 = document.getElementById('box3').value;
var mybox4 = document.getElementById('txtDiscount').value;
var mybox5 = document.getElementById('txtSC').value;

var multply = myBox1 * myBox2;
var per = (multply * mybox3) / 100;
var myResult = multply + per;
var withDisCount = (myResult * mybox4) / 100;
var myDiscount = myResult - withDisCount;
var ShippingCost = myDiscount + (parseFloat(mybox5));

// var finalResult = Math.round(ShippingCost);
var result = document.getElementById('TotalAmt');

result.value = ShippingCost;




});


on last textbox i.e mybox5, when i am trying to backspace in that textbox(making it empty manually) my "TotalAmt" textbox show NaN value.

推荐答案

(\"#txtSC\").keyup(function() $





var myBox1 = document.getElementById( 'box1')。value;

var myBox2 = document.getElementById('box2')。value;

var mybox3 = document.getElementById('box3')。value ;

var mybox4 = document.getElementById('txtDiscount')。value;

var mybox5 = document.getElementById('txtSC')。value;



var multply = myBox1 * myBox2;

var per =(multply * mybox3)/ 100;

var myResult = multply + per;

var withDisCount =(myResult * mybox4)/ 100;

var myDiscount = myResult - withDisCount;

var ShippingCost = myDiscount +(parseFloat(mybox5));



// var finalResult = Math.round(ShippingCost);

var result = document.getElementById('TotalAmt');



result.value = ShippingCost;









});





在最后一个文本框即mybox5上,当我试图退格时那个文本框(手动为空)我的TotalAmt文本框显示NaN值。
("#txtSC").keyup(function () {


var myBox1 = document.getElementById('box1').value;
var myBox2 = document.getElementById('box2').value;
var mybox3 = document.getElementById('box3').value;
var mybox4 = document.getElementById('txtDiscount').value;
var mybox5 = document.getElementById('txtSC').value;

var multply = myBox1 * myBox2;
var per = (multply * mybox3) / 100;
var myResult = multply + per;
var withDisCount = (myResult * mybox4) / 100;
var myDiscount = myResult - withDisCount;
var ShippingCost = myDiscount + (parseFloat(mybox5));

// var finalResult = Math.round(ShippingCost);
var result = document.getElementById('TotalAmt');

result.value = ShippingCost;




});


on last textbox i.e mybox5, when i am trying to backspace in that textbox(making it empty manually) my "TotalAmt" textbox show NaN value.


有意义,因为你做的是:

var myDiscount = myResult - withDisCount;

,这将是一个数字,例如:

100.

然后你尝试将其与(parseFloat(mybox5)相加));

但是你的mybox5是空的。而parseFloat('')的结果是NaN。

所以你会得到

100 + NaN

这是NaN



有意义吗?
Make sense, because what you do is this:
var myDiscount = myResult - withDisCount;
and that will be a number for example:
100.
and then you try to sum it with (parseFloat(mybox5));.
However your mybox5 is empty. And result of parseFloat('') is NaN.
so you will make
100 + NaN
which is NaN

make sense?


这篇关于javascript计算中的nan问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆