我有以下内容:
var offset;
offset = localStorage.getItem('test.MenuList.Offset.' + examID + "." + level) || 0;
offset += 100;
当我使用调试器时,此偏移现在有0100.我希望它添加像数字而不是字符串。我怎么能这样做?
请注意我稍微更改了问题,因为我意识到我从本地存储中获取了价值。我假设这返回一个字符串。但我仍然不确定如何解决这个问题。
答案 0 :(得分:2)
您提供的代码不会这样做。我假设你的实际代码中的值是一个数字字符串。 如果是, +
将表现为字符串连接运算符,因此您必须在使用+
之前将值转换为数字。
您可以使用parseFloat()
执行此操作。
var offset = localStorage.getItem('test.MenuList.Offset.' + examID + "." + level);
offset = parseFloat(offset) || 0;
或者在大多数情况下,您只需使用一元版+
进行转换即可。
offset = +offset || 0;