昨天学习JavaScript的switch case,花费了很长时间都不能找到问题所在,因为是和《JavaScript基础教程(第8版)》的例子一样,
不知如何下手,后来才想到可以看浏览器的报错日志在浏览器界面按F12,就可以出现。
下面分别是HTML和js相应代码:
switchcase.html
<head>
<title>switch case</title>
<script src="switchcash.js"></script>
</head>
<body>
<h2>Famous Presidential Quotes</h2>
<form action="#">
<input type="button" id="Lincoln" value="Lincoln">
<input type="button" id="Kennedy" value="Kennedy">
<input type="button" id="Nixon" value="Nixon">
</form>
</body>
switchcase.js(有错)
window.onload=initAll;
function initAll(){
document.getElementById("Lincoln").onclick=saySomthing;
document.getElementById("Kennedy").onclick=saySomthing;
document.getElementById("Nixon").onclick=saySomthing;
}
function saySomthing(){
switch(this.id){
case "Lincoln":
alert("Four score...");
break;
case "Kennedy":
alert("Ask not...");
break;
case "Nixon":
alert("I am a ...");
break;
defalut:
}
}
点击switchcase.html后浏览器报下面的错误:
看上图可知是js的第21行出错,当时因为书上就是这样写的,所以一直没找到,看来“尽信书不如无书”真是至理名言啊。
这里把defalut:
去掉,也可加上break;
就OK了。
总结
- 按F12可以调试HTML和js代码;
- 当和书上或者前者经验一致时扔不对,那就要大胆质疑前辈是否有错。要在考证好的前提下,不要盲目反对,或一竿子打到。
祝:身体健康,工作学习顺利!