Javascript parseFloat或toFixed不表示小数

Javascript parseFloat或toFixed不表示小数,javascript,Javascript,构建一个用toFixed和parseFloat表示数字的计算器时,它似乎忽略了十进制输入,当你正确输入“.”或“.0”或“.00”等时,它会跳过,直到你写出一个不是0的数字。有什么帮助吗 var ghost = Number(parseFloat(reactant).toFixed(13)); var ghost2 = Number(parseFloat(reactant2).toFixed(13)); var ghostspec = Number(parseFloat(reactantspec

构建一个用toFixed和parseFloat表示数字的计算器时,它似乎忽略了十进制输入,当你正确输入“.”或“.0”或“.00”等时,它会跳过,直到你写出一个不是0的数字。有什么帮助吗

var ghost = Number(parseFloat(reactant).toFixed(13));
var ghost2 = Number(parseFloat(reactant2).toFixed(13));
var ghostspec = Number(parseFloat(reactantspec).toFixed(13));

 if (vi === 0){
    document.getElementById('result').innerHTML = ghost;
} else if (vi >= 1 && tx === 0) {
    document.getElementById('result').innerHTML = ghost2;
} else if (vi >= 1 && tx > 0) {
    document.getElementById('result').innerHTML = ghostspec;
}
}
  **this is how you type decimals**
      function click10() {
    if (vi === 0) {
   click10a();
} else if (vi !== 0 && tx === 0) {
   click10b();
 } else if (vi !== 0 && tx !== 0) {
    if (di3 === 0) {
        virs++;
        reactantspec = reactantspec + "" + ".";
        di3++;
    }
}
}
function click10a() {
    if (di1 === 0) {
    reactant = reactant + "" + ".";
    vir++;
    di1++;
    }
}
function click10b() {
    if (di2 === 0) {
    reactant2 = reactant2 + "" + ".";
    vir2++;
    vi++;
    di2++;
   }
}
“问题”在于,
Number
函数会截断由
parseFloat(…).toFixed(13)
生成的格式化数字(字符串)的小数。看一看:

设wn=Number(parseFloat(“1”).toFixed(13))+“
”+ 数字(parseFloat(“1”).toFixed(13))+“
”+ 数字(parseFloat(“.1”).toFixed(13))+“
”+ 数字(parseFloat(“1.1”).toFixed(13))+“
”+ 数字(解析浮点(“0”).toFixed(13))+“
”+ 数字(parseFloat(“0”).toFixed(13))+“
”+ 数字(parseFloat(“.0”).toFixed(13))+“
”+ 数字(0.0)至固定值(13); 设wtn=parseFloat(“1”).toFixed(13)+“
”+ parseFloat(“1”).toFixed(13)+“
”+ parseFloat(“.1”).toFixed(13)+“
”+ parseFloat(“1.1”).toFixed(13)+“
”+ parseFloat(“0”).toFixed(13)+“
”+ parseFloat(“0”).toFixed(13)+“
”+ parseFloat(“.0”).toFixed(13)+“
”+ 解析浮点数(“0.0”)。toFixed(13); document.getElementById(“结果”).innerHTML= “带编号(…):
“+wn+”

“+ “无编号(…):
”+wtn
为什么要使用数字(…)?parseFloat已经生成了一个数字。这能修复它吗?我明白了,我应该把它作为一个字符串吗?@Benn是的,因为一个有很多跟踪零的数字作为一个数字是没有意义的
toFixed()
是一个数字格式函数。但是toFixed的目的是修复浮点舍入错误,因为它似乎在13位小数或更少的情况下工作,所以我需要将它固定到13位小数。