我正在尝试将一些代码从C ++转换为JavaScript,但我对ints
,doubles
,NaN
以及解析浮点数感到困惑。我想!?
Z = T - 14 - (1);
while (Z <= T)
{
var S1 = 0.0;
for (var C = 0; C <= P - 1; C++)
{
if (V[Z + C] !== undefined)
{
skip = 0;
S1 = S1 + (V[Z + C] + V[Z + C]) / 2;
}
else
{
skip = 1;
}
}
console.log('S1: ' + S1);
Z++;
}
S1
现在总是NaN
如何阻止这种情况? (与typeof
有关的事情?)
好的一点:我有V=[]
部分工作,并且使用双打并且正在处理未定义的部分(凌乱的修复),这是一个很好的进展。
答案 0 :(得分:1)
当涉及floats
的操作失败时,NaN
是结果值。 NaN
有一个有趣的属性:使用NaN
操作始终会生成NaN
。
这意味着只要其中一个变量持有NaN
,该值就会随着将来的所有操作而传播。
console.log
你的花车,并检测一个人成为NaN
的时刻。我的赌注在(V[Z + C] + V[Z + C])
。