jsp页面数字运算
代码如下:
<button onclick="aa()">测试</button>
<input value="6%" name="sd">
<input value="100" name="s">
<script type="text/javascript">
function aa(){
var sd = $("[name='sd']").val()*1;
var s = $("[name='s']").val()*1;
var sum = s * sd;
alert(sd+" * "+s+" = "+sum);
}
</script>
运行结果 : NaN * 100 = NaN
说明:页面有两个值,都是后台传的,其中有个值是税点,是百分号的形式
要求:计算开票金额,开票金额 = 税点 * 总金额;
问题点在于,这个税点是个百分号的形式,因为其他地方要显示,所以是百分号的形式,方便读取
只是方便客户读取,计算机就不方便了
因为 js 没办法识别出那个是百分数
求解答
转换一下吧:
var n = "6%"; if(n[ n.length - 1 ] == "%"){ n = parseFloat(n)/100 ; } console.log(n); // 0.06
Number(数字)
既然都知道sd这个地方是%号形式,又要参与运算,难道不会处理下?直接replace掉%,然后再除100再参与运算。
自己检查并转换,js并没有那么智能。
%符号在程序设计中,一般表示求余运算,并不是所谓数学中的百分号。