这完全是一个教育问题.
我正在开发一个新版本的网络应用程序,我正在为之前做过的公司做得更早.当重写数学时,我遇到了这个:
document.getElementById("estResidual").value-0;
想到没有目的的“-0”,我删除它.但是当我尝试计算时,数字是waaayyyyyyy.然后我尝试重新加上“-0”,瞧瞧!一切都很好
问题:
“-0”做什么来改变价值?
解决方法
这是(ab)使用JavaScript的软打字行为.在这种情况下,它会将字符串转换为float:
> "13" "13" > "13"-0 13 > "1.01"-0 1.01
一元将做同样的事情:
> +"13" 13 > +"9.9" 9.9
请注意,使用will而是将整数0转换为字符串并连接:
> "13"+0 "130"
这一切都是标准化的.有关这些运算符应如何运行的明确详细信息,您可以随时检查ECMAScript语言规范(例如addition,subtraction. unary plus).