带提示的两个数字的总和

新手上路,请多包涵

最近几天我一直在尝试解决这个问题:当我通过提示输入减法、乘法或除法时,一切正常;但是当我想把它们相加时,我把这两个数字简单地写在一起。

示例:如果我将 5 和 6 相加,我得到 56!!

这是我正在使用的代码。

 var a = prompt("Enter first number");
var b = prompt("Enter second number");

alert(a + b);

我究竟做错了什么?我必须指定值类型吗?

原文由 user3471329 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 222
1 个回答

函数 prompt 返回一个字符串, + (不明智地,也许) 用于 字符串连接和数字加法。

您不需要在 JavaScript 中“指定类型”,但可以在运行时进行字符串到数字的转换。有很多方法可以做到这一点。最简单的是:

 var a = +prompt("Enter first number");
var b = +prompt("Enter second number");
alert(a + b);

但你也可以

var a = Number(prompt("Enter first number"));
var b = Number(prompt("Enter second number"));
alert(a + b);

(避免 parseInt 因为它只处理前导字符,不会添加 4.5 和 2.6 之类的数字。)

原文由 Ray Toal 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题