Javascript 除以两个变量返回NaN
当我除以两个变量得到变量v1时,它返回NaN?但是,当我使用document.write时,所有其他变量都给出了数字Javascript 除以两个变量返回NaN,javascript,nan,Javascript,Nan,当我除以两个变量得到变量v1时,它返回NaN?但是,当我使用document.write时,所有其他变量都给出了数字 min = 0.001,max = 0.1, c1 = (Math.random() * (max - min) + min).toFixed(3); min = 0.1,max = 1000, kcat = (Math.random() * (max - min) + min); var Eo = 0.1; var Vmax
min = 0.001,max = 0.1,
c1 = (Math.random() * (max - min) + min).toFixed(3);
min = 0.1,max = 1000,
kcat = (Math.random() * (max - min) + min);
var Eo = 0.1;
var Vmax = (Eo*kcat);
min = 0.1,max = 100,
Km = (Math.random() * (max - min) + min);
v1t = (c1)*(Vmax);
document.write(v1t); //GIVES NUMBER
v1b = (c1)+(Km);
document.write(v1b); //GIVES NUMBER
v1 = v1t / v1b;
document.write(v1); //returns NaN
toFixed
构建字符串(例如“0.013”
)。当您使用(c1)+(Km)
添加一个数字时,它会给出如下字符串:
"0.01339.069145169761036"
使用v1t/v1b
将一个数字除以一个字符串,得到NaN
为什么要使用
toFixed
?似乎没有任何好的理由这样做。但是如果您真的想使用它,请在将其用于计算之前对结果应用parseFloat
。您的第一个文档。write()
printsv1b
btw…首先检查变量v1b not null/zeroI changed v1b-document.write给了我:7.31168393522926和0.07472.59526266876507谢谢这很好-我使用ToFixed是因为我以后显示c值,不希望它们太长,但我会在编写之前使用.ToFixed!仅在打印值时使用toFixed
。如果不重用它,就不要存储它。但是,是否可以对可以用作数字的数值进行舍入?是的。除了简单地解析toFixed(它不是eleguant)的结果外,还可以使用Math.round、Math.ceil和Math.floor。我现在正在看Math.round。谢谢