Kea*_*uto 2 javascript variables sum concatenation
我目前正在创建一个网站,它将帮助我快速回答物理问题。碰巧,代码没有按预期运行,这是代码
if (option == "dv") {
var Vinitial = prompt("What is the Velocity Initial?")
var acceleration = prompt("what is the acceleration?")
var time = prompt("what is the time?")
Vfinal = Vinitial + acceleration * time
displayV.innerHTML = "v= vf= " + Vfinal + "ms" + sup1.sup();
}
Run Code Online (Sandbox Code Playgroud)
现在,假设 Vinitial 为 9,加速度为 2,时间为 3。当代码运行时,“Vfinal”不是 15,而是 96。我发现它乘以加速度和时间,然后连接起来9开头,有6(2 * 3的乘积)。
我现在已经通过使用修复了它
Vfinal = acceleration * time - (-Vinitial)
Run Code Online (Sandbox Code Playgroud)
这避免了使用“+”号,但我不想继续这样做。我如何解决它?
你正在处理strings这里,字符串上的数学运算会搞砸。请记住,当您进行数学运算时,您必须将数据转换为实际数字,然后执行数学运算。
在此处使用更多详细信息parseInt()
你的代码应该更改为
Vfinal = parseInt(Vinitial,10) + parseInt(acceleration,10) * parseInt(time,10);
编辑1:如果数字是十进制值,则parseFloat()使用
所以代码是
Vfinal = parseFloat(Vinitial) + parseFloat(acceleration) * parseFloat(time);