点击后,计算出的BMI显示为0.3;预期答案是22.8
有问题的代码片段:
calculateButton.addEventListener('click', function() {
var feet = feetField.value;
var inches = inchesField.value;
var heightInInches = (feet * 12) + inches;
bmiDisplay.text = ((weightField.value / (heightInInches * heightInInches)) * 703).toFixed(1);
});
高度英寸应等于68,而不是608。似乎不知何故,英尺(5)乘以了120,而不是12,然后在最后加上了英寸(8),但我不太明白为什么会发生这种情况,为什么当我浏览代码时它会对我隐藏起来?
调试器在公式中显示了英尺(5)和英寸的正确值,但在计算后分配给高度英寸 链接到BMI公式 我想我把问题编排得很正确;长期听众,第一次打电话。我只是盯着它看太久了。。。我有我的UI和调试器的屏幕截图,但我不得不从帖子中删除这些图像。好的,谢谢你的光临。
inches
是一个字符串,所以当您执行+运算符时,它会将其连接起来。您可以简单地执行
var heightInInches = (feet * 12) + inches*1;
它会把它当作一个数字。
尝试添加:
var feet = parseFloat(feetField.value);
var inches = parseFloat(inchesField.value);