我正在从服务器中检索JSON,并且必须添加或减去一些数字,但是它不适用于加法,但可以用于减去。 知道为什么吗?
\b
答案 0 :(得分:2)
您需要将字符串转换为数字,因为可以添加字符串,这意味着concat。通过取-
,两个操作数都转换为数字。
var data = { point: { x: '4.0', y: '10.0' } },
startX = 10,
startY = 5,
newX = startX + +data.point.x,
newY = startY - +data.point.y;
console.log(newX, newY)
答案 1 :(得分:0)
那是因为您来自JSON的数字被视为字符串而非数字。 您需要先将它们转换为数字(整数或浮点数)。
newX = startX + parseFloat(data.point.x);
newY = startY - parseFloat(data.point.y);