从输入而不是对象中检索数字值
我正在编写一个小程序来确定两个数字之间的公因子。不过,我在收到号码时遇到问题。这是我的HTML代码:从输入而不是对象中检索数字值
<p>Please input two numbers to find the common factors between them.</p>
First number:<input type="number" id="firstNumber"></br>
Second number:<input type="number" id="secondNumber"></br>
<button onclick="commonFactors(document.getElementById('firstNumber'),
document.getElementById('secondNumber'))">Submit</button>
然而,而不是得到的数字后面,控制台返回如下:
"<input type='number' id='firstNumber'>" "<input type='number'
id='secondNumber'>"
随着行情。你能告诉我我做错了什么吗?
不知道它的问题,但这里的JS:
function commonFactors(num1, num2) {
console.log(num1, num2);
var counter=Math.min(num1, num2);
var factors=[];
var k=0;
for (i=1; i<counter; i++) {
if (num1%i==0) {
if (num2%i==0) {
factors[k]=i;
}
}
k+=1;
}
};
你想输入的值,而不是输入本身:
的document.getElementById( 'firstNumber') .value的
因为document.getElementById('firstNumber')
是指的输入,使用+document.getElementById('firstNumber').value
通知+
因为你值从输入得到的是string
型的,所以我们用+
将它们转换成若干
注意:您可以使用函数代替+
这就是所谓的parseInt()
的整数和parseFloat()
与浮点数
结果是
<button onclick="commonFactors(parseInt(document.getElementById('firstNumber').value),
parseInt(document.getElementById('secondNumbe').value)">Submit</button>
感谢你们两位!它将parseInt和.value的组合用于工作。 –
是的,你将需要如第一段所述的他们两人。我忘了在示例中添加.value – Laassari
谢谢!见上面的评论。 –