首页 > 解决方案 > 将两个数字与字符串相加

问题描述

我正在寻找一种计算两个数字的方法,其中这两个数字中的每一个在“dolar”或“meter”之类的文本框中都有一个字符串,当我在 value="" 中添加字符串并计算时,我收到此消息: 南

这是我的代码:

function myFunction() {
  var y1 = document.getElementById("text1").value;
  var y2 = document.getElementById("text2").value;
  var x = Number(y1) + Number(y2);
  document.getElementById("demo").value = x;
}
<p>
  Enter first number:
  <input type="text" size="10" id="text1" name="text1" onblur="myFunction()"> Enter second number:
  <input type="text" size="10" id="text2" name="text2" onblur="myFunction()">
</p>
<input type="text" id="demo" name="demo" size="10" value="">

标签: javascripthtml

解决方案


构造Number()函数将拒绝不完全是数字的输入字符串,并NaN在这种情况下返回。

然而,一切并没有丢失:该parseFloat()函数在到达不属于数字的文本时只是停止解析,因此字符串 like"127.45 pounds"将被解析为 number 127.45


推荐阅读