所以,我在html中创建一个程序,将任何十进制数转换为二进制数,这是完美的,然后我尝试修改它,并以某种方式搞砸了它。问题似乎是它需要运行时开始时的值,而不是总是抓住它,但它之前没有这样做。并且,我不知道为什么会这样做,而且我不完全确定我甚至会查找这种错误,特别是当我不知道出了什么问题时。
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<input type = "number" id = 'decimal'></input><br/>
<a id = 'binary'></a>
<script>
setInterval(convert(),1);
function convert() {
var nNum = "";
var num = document.getElementById('decimal').value;
while(num != 0) {
nNum = (num % 2) + nNum;
num = Math.floor(num/2);
}
document.getElementById('binary').innerHTML = nNum;
}
</script>
</body>
</html>
非常感谢任何和所有帮助。 C:
答案 0 :(得分:1)
尝试:
<script>
setInterval(convert,1);
function convert() {
var nNum = "";
var num = document.getElementById('decimal').value;
while(num != 0) {
nNum = (num % 2) + nNum;
num = Math.floor(num/2);
}
document.getElementById('binary').innerHTML = nNum;
}
</script>
当您将函数作为函数参数传递时,不要将其称为convert()
,只传递它convert