我在进行简单添加时遇到问题,并将值保存在变量中。
基本上我有以下代码:
var accsen;
var lowsev = parseInt(accsen);
var hisev = parseInt(accsen) + parseInt(0.65);
console.log('Lowsev: ' + lowsev);
console.log('Hisev: ' + hisev + ' Type: ' + typeof(hisev));
console.log('Accsen: ' + accsen);
变量accsen从数据库中获得一个值。 Lowsev被赋予与accsen相同的值,而hisev被赋予accsen + 0.65的值。
然而,我遇到的问题是lowsev和hisev都保持为0.在执行console.log时,我得到以下值:
Lowsev:0 Hisev:0输入:undefined Accsen:0.75
有人可以告诉我在添加中我做错了什么吗?我使用正确的操作符吗?
答案 0 :(得分:2)
听起来您想使用parseFloat
代替parseInt
。
答案 1 :(得分:1)
“Lowsev被赋予与accsen相同的值”它不是,你将它四舍五入为整数。
但是parseInt()
没有正确地舍入。 0.75出现为0,所以它正在工作。假设您确实想要舍入这些值,请尝试
var accsen;
var lowsev = Math.round(accsen);
var hisev = Math.round(accsen) + Math.round(0.65);
编辑给出回复
您的JS将accsen视为字符串,您需要转换为数字
var accsen = '0.75'; // as other people have noted this val in your code is missing.
var lowsev = parseFloat(accsen);
var hisev = parseFloat(accsen) + 0.65;