关于字符串和整数值的JavaScript

时间:2016-09-05 14:59:25

标签: javascript

我需要帮助学习这一点。提前谢谢。

<label>Value 1</label> <input type="text" id="value1" name="value1" /><br />

<script>

var num1 = document.getElementById("value1");
parseInt(num1.value) // this gives an integer when you key in an integer in the input box.

var num1 = document.getElementById("value1").value;
parseInt(num1) // this gives NaN when you key in an integer in the input box. 

</script>

我可以知道他们为什么会有区别?我认为它们是相同的,但事实并非如此。

2 个答案:

答案 0 :(得分:0)

从您的新帖子(您发布为答案,现在已删除),您试图在插入值之前从输入字段中获取值。

将这些行移动到函数add内部,以便仅在单击按钮后分配给变量的值。

var num1 = document.getElementById("value1").value;
var num2 = document.getElementById("value2").value;

该功能应该像

function add () {
  var num1 = document.getElementById("value1").value;
  var num2 = document.getElementById("value2").value;
  var sumup = parseInt(num1.value) + parseInt(num2.value);
  document.getElementById("output").innerHTML = "The total is " + sumup;
}

你的问题的答案是

之间没有区别
var num1 = document.getElementById("value1");
parseInt(num1.value)

var num1 = document.getElementById("value1").value;
parseInt(num1)

检查下面的代码段

&#13;
&#13;
<form action="" name="add1">
  <label>Value 1</label>
  <input type="text" id="value1" name="value1" />
  <br />
  <label>Value 2</label>
  <input type="text" id="value2" name="value2" />
  <br />
  <br />
  <div id="output"></div>
  <br />
  <button type="button" id="addup">Add</button>
</form>
<script>
  document.getElementById("addup").addEventListener("click", add);

  function add() {
    var num1 = document.getElementById("value1").value;
    var num2 = document.getElementById("value2").value;
    var sumup = parseInt(num1) + parseInt(num2);
    document.getElementById("output").innerHTML = "The total is " + sumup;
  }
</script>
&#13;
&#13;
&#13;

答案 1 :(得分:-2)

两个例子看起来都是等价的,其他错误。也许你覆盖POST变量?试试这个:

num1