Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/362.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用parseInt()方法计算文本输入值时获取NaN而不是数字_Javascript_Html - Fatal编程技术网

Javascript 使用parseInt()方法计算文本输入值时获取NaN而不是数字

Javascript 使用parseInt()方法计算文本输入值时获取NaN而不是数字,javascript,html,Javascript,Html,HTML 我首先将重量(以磅为单位)转换为千克,乘以它乘以kgVal,然后将这个重量除以heightInMts的值,如下所示kgs/heightInMts/heightInMts。说明书 1.用你的体重(千克)除以你的身高(米) 2.然后再将答案除以你的身高,得到你的BMI <h1>BMI calculator</h1> <div class="contact-clean"> <form method="post" id="formOne">

HTML

我首先将重量(以磅为单位)转换为千克,乘以它乘以kgVal,然后将这个重量除以heightInMts的值,如下所示kgs/heightInMts/heightInMts。说明书 1.用你的体重(千克)除以你的身高(米) 2.然后再将答案除以你的身高,得到你的BMI

<h1>BMI calculator</h1>
<div class="contact-clean">
    <form method="post" id="formOne">
      <div>
        <p>Feet</p>
        <input type="number" id="feetInput" class="form-control col-2"/>
      </div>
      <div>
          <p>Inches</p>
          <input type="number" id="inchesInput"  class="form-control col-2"/>
        </div>
        <div>
            <p>Weight in pounds</p>
          <input type="number" id="weightInput" class="form-control col-2"/>
          </div>
          <button id="calculate" class="btn btn-primary" type="button">Calculate</button>
    </form>
    <p id="result"></p>
    <a href="#" class="recalculate hidden">Calculate again!</a>
</div>
我得到的值是NaN。有人能告诉我我在这方面做错了什么吗
计算。谢谢。

当您尝试对两个非数字且无法转换为数字的操作数执行数学运算时,javascript中的NaN会出现

例如

因为在这些情况下,JS无法将字符串a转换为数字并给出NaN

有关NaN的更多信息,请访问

用包装纸

let x = function( i) {
    let r = parseInt( i);
    if ( isNaN( r)) {
        return 0;

    }

    return r;

}

x('fart'); // result 0

我看到的一个问题是没有Javascript。你能添加JS代码吗?因为错误不是来自模板。在这种情况下我能做什么?我试图上传它,但它不允许我。谢谢你帮助萨帕尔·塔南。
1 - "a" = NaN
1 * "a" = NaN
1 / "a" = NaN
let x = function( i) {
    let r = parseInt( i);
    if ( isNaN( r)) {
        return 0;

    }

    return r;

}

x('fart'); // result 0