我正在用Javascript和HTML制作RTS游戏。我知道听起来有些野心勃勃,但我不打算为这里的明星而射击。只是让我感到高兴的一些事情。
我目前正在游戏的运动部分。我的运动引擎应该可以工作,但是有问题。在我的脚本中,我使用不等式语句(>和<)将绝对定位字符的当前左值和上限值与目标(可能正在移动)的目标值进行比较。问题是我得到的反馈形式document.getElementById(nameVar).style.left是字符串(例如200px)而不是数字(例如200),因此比较不起作用。
>
<
document.getElementById(nameVar).style.left
200px
200
我的问题是,有什么办法可以将字符串转换成我可以操纵的数字?可以使用更改的地址,也可以在获得反馈后通过反馈执行一些步骤。
任何帮助都会很棒。
parseInt 给你数值:
parseInt
var tmp = parseInt(document.getElementById(nameVar).style.left, 10); console.log(tmp);
或者,如@PeteWilson在评论中建议的那样,使用 parseFloat
parseFloat