如何返回没有小数的值

时间:2016-03-15 21:58:44

标签: jquery decimal

我试图在这个BMI计算器中找到BMI值,但结果是十进制值,但我希望它只返回一个整数。

例如:在计算BMI值后,它返回82.25235,但我希望它返回82.我该怎么做?



function calculateBMI() {
	
    var weight = $("#txtWeight").val();
	
    var height = $("#txtHeight").val();
	
    BMIScore = weight/(height/100*height/100);

}

<label id="label">Height:</label>
<input type="number" name="text" placeholder="Height(Cms)" id="txtHeight" />

<label id="label"> Weight:</label>
<input type="number" name="text"  placeholder="Weight(Kgs)" id="txtWeight" />

<a href="#" data-role="button" id="button" onClick="calculateBMI()">Show</a>
&#13;
&#13;
&#13;

2 个答案:

答案 0 :(得分:2)

丢弃小数

在(原始)标题中,您要求take value with out (sic) decimal。在这种情况下,请让你的BMIScore throguh parseInt()

  

parseInt()函数解析一个字符串并返回一个整数。

MDNW3Schools了解详情。

舍入到最接近的整数

您可能希望舍入到最接近的整数。这样,您可以将值显示为整数,从而最大限度地减少错误。在这种情况下,请让你的BMIScore throguh round()

  

round()方法将数字四舍五入为最接近的整数。

MDNW3Schools了解详情。

基于您的代码的示例

function calculateBMI() {

  var weight = $("#txtWeight").val();

  var height = $("#txtHeight").val();

  BMIScore = parseInt(weight / (height / 100 * height / 100));
  alert(BMIScore);
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<label id="label">Height:</label>
<input type="number" name="text" placeholder="Height(Cms)" id="txtHeight">

<label id="label">Weight:</label>
<input type="number" name="text" placeholder="Weight(Kgs)" id="txtWeight">

<a href="#" data-role="button" id="button" onClick="calculateBMI()">Show</a>

很少注意到

  • 此任务不需要jQuery。 $("#id").val()可以替换为document.getElementById('id').value
  • 您的<label>具有相同的id s。整个文档中只有一个元素应该具有特定的id
  • 请勿在按钮上使用内联onclick属性,请使用document.getElementById('button').addEventListener('click', calculateBMI);

答案 1 :(得分:0)

这取决于你想要如何围绕 -

假设您的BMIScore是一个数字:

始终向下舍入: Math.floor(BMIScore);

始终围捕: Math.ceil(BMIScore);

正常舍入: Math.round(BMIScore);

Typecast to Integer: parseInt(BMIScore);