我是初学者,对Javascript和HTML都知之甚少,如果我的问题非常基本,请对不起。 我正在尝试编写一个基本网页,当点击一个按钮时,它将使用Javascript对数组执行某些操作,然后将结果打印到页面。
<!DOCTYPE html>
//error here
<html>
<head>
<title>Thursday's Homework</title>
<script>
var problem1 = function()
{for (var i = 0; i <= 50; i += 5) {
document.write(i + " ");
}
}
var myArray = []
var problem2 = function()
{for (var i = 0; i <= 9; ++i){
myArray[i]
}
document.write(myArray)
</script>
</head>
<body>
<center><h2><b> My Homework for Thursday<b></h2></center>
<p>This is my code for Problem 1:</p>
<input type="button" onclick = "problem1()" value="Does it work?">
//error here
<p>This is my code for Problem 2:</p>
<input type="button" onclick = "problem2()" value="Does it work?">
//error here
</body>
</html>
当我使用开发人员工具在Chrome中调试时,我收到三条错误消息: 在第1行之后:Uncaught SyntaxError:意外的输入结束 在第22行(第一个按钮)之后:未捕获的ReferenceError:未定义problem1 第24行(第二个按钮)后:未捕获参考错误:未定义问题2
我也想知道是否有更好的方式来显示输出而不是document.write
,因为这使得每次都需要重新加载页面以查看下一个结果。
我是新人,所以如果这完全是创造这件事的错误方法,我表示歉意。如果是这样的话,请指出正确的方向。
更新:
我修复了语法错误,运行正常。我仍然想知道一种更好的方式来显示document.write
的结果。我不太懂,所以如果你有建议,你能告诉我如何实施吗?
答案 0 :(得分:2)
你在问题2之后错过了一个结束}。
这是造成此类错误的最常见原因。由于函数体未正确关闭,因此JS解释器中断,停止解析。然后其他东西试图引用一个未能解析的变量/函数并触发参考错误。
答案 1 :(得分:1)
我可以看到一些问题。
}
之后错过了结束problem2
。=
onclick =
周围有空格。{for
这样的事情。而是在{
。答案 2 :(得分:0)
而不是document.write();你可以指定一个像
这样的id或
并在js中使用
document.getElementById("abc").innerHTML=i+" ";
更好更安全的编码使用jsLint ..
答案 3 :(得分:0)
至于你的第二个问题,你可以找到很多有用的Chrome和Firefox扩展程序,可以满足你的调试需求。
Chrome具有内部工具,例如“Web控制台”,可让您以变量形式查看变量。