javascript - 函数会输出 nan 而不是数字,为什么?

标签 javascript nan tofixed

<div class="Er3"> 
        <p>  Α </p>
        <form>Input a number <br><input type="n" id="er3">  </form> 
        <button onclick="QuestionThree()"> submit </button>
        <p id="output"> </p>


        <script> function QuestionThree() {
        var y = document.getElementById("er3");
        var o = parseFloat(y);
        var n = o.toFixed(2);
        var x = y - n;
        var z = Math.abs(x);
        document.getElementById("output").innerHTML = z;
        }</script>


    </div>

我已经将函数分解为尽可能匹配,但它仍然会返回 nan 而不是数字,为什么?

最佳答案

y 保存的是元素,而不是它的值。请尝试以下代码:

   <script> 
       function QuestionThree() {
         var y = document.getElementById("er3").value;
         var x = y - parseFloat(y).toFixed(2);
         var z = Math.abs(x);
         document.getElementById("output").innerHTML = z;
       }
     </script>

关于javascript - 函数会输出 nan 而不是数字,为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37240506/

相关文章:

javascript - 防止 toFixed 对非常小的小数进行四舍五入

javascript - 带有 ng-repeat 的 Angular JS 指令无法遍历子元素

javascript - 如何在同一 ui-select 字段上同时应用过滤器 :$select. 搜索和 limitTo :$select. infiniteCurrentLimit?

javascript - D3条形图需要在特定条形中添加箭头和文本

javascript - jQuery .load() Bootstrap 模式和显示

Java - 用户输入 - 错误循环

python - 如何过滤包含 NaN 的 bool 掩码

python - Pandas crosstab() 函数与包含 NaN 值的数据框的混淆行为

Javascript 尾数为 2 位小数不起作用

javascript - 使用reduce方法JS后修复