问题:当尝试将字符串表示的两个数字相加时,结果不正确,因为它们是连接而不是求和。例如,1 2 返回“12”而不是 3。
代码片段:
var y = document.getElementById("txt1").value; var z = document.getElementById("txt2").value; var x = y + z;
说明: y 和 的值z 从 HTML 输入元素中作为字符串检索。当使用“ ”运算符添加这些字符串时,JavaScript 会将它们视为文本并将它们连接起来,而不是执行数学加法。
解决方案: 要解决此问题,必须转换字符串执行加法之前的数字。这可以通过在每个字符串前面添加 ' ' 运算符来实现。
var x = +y + +z;
在此修改后的代码中,' ' 运算符用于在将字符串相加之前将它们强制转换为数字。这将确保 1 2 返回正确的 3 之和,而不是连接字符串“12”。
以上是为什么在 JavaScript 中添加字符串会导致连接而不是数字加法?的详细内容。更多信息请关注PHP中文网其他相关文章!