Javascript 将一个变量乘以一个数字,然后将结果再次添加到该变量,则返回错误的结果

Javascript 将一个变量乘以一个数字,然后将结果再次添加到该变量,则返回错误的结果,javascript,Javascript,函数计算计数(val){ var价格=val; 如果(数量>=100和数量=100&&quantity

函数计算计数(val){
var价格=val;
如果(数量>=100和数量<1000){
var divobj=document.getElementById(“折扣”);
divobj.value=20;
var divobj1=document.getElementById('total');
var总额=((20/100)*parseInt(价格))+parseInt(价格);
divobj1.value=总计;
}
}
因为val是一个字符串:

var price = +val;
请测试这个代码,我希望这个代码可以工作

divobj.value = 20;
请删除以上行代码:

var total = ((divobj.value / 100) * parseInt(price)) + parseInt(price);
并使用行上代码而不是行下代码:

var total = ((20 / 100) * parseInt(price)) + parseInt(price);

代码中有错误,未声明或以其他方式创建数量。但是假设它应该是price,那么问题很可能是price(因此val)是一个字符串,而不是一个数字。在乘法、除法和减法中,它将被强制为数字,而不是加法,另一个值将被强制为字符串(hance
100+“20”=“10020”
。parseInt(price)使用它。谢谢阿巴斯!它工作得很好!嗨,阿巴斯,如果我需要在var total中使用折扣而不是20,怎么做?函数calculateAmount(val){var price=val;if(quantity>=100&&quantity<1000){var divobj=document.getElementById('discount');divobj.value=20;var divobj1=document.getElementById('total');var total=((20/100)*price)+price;divobj1.value=total;}我编辑我的答案,请检查以获取您的答案,然后,如果可能,选择我的答案作为正确答案,谢谢@ArunkumarSubbiah(-;
var total = ((20 / 100) * parseInt(price)) + parseInt(price);