JavaScript基础排错实战:从错误到正确

需积分: 0 0 下载量 7 浏览量 更新于2024-08-04 收藏 3KB MD 举报
"该资源是一份JavaScript基础排错题,包含多个常见的编程错误,并要求指出错误并提供修正后的代码。" 在JavaScript编程中,错误处理是开发者必须掌握的基本技能之一。下面将逐一分析并修正提供的代码片段中的错误: 1. **JS代码书写位置** 错误:`<script>`标签的`src`属性引用了外部文件`./02.js`,但紧接着又在同标签内写了`alert('弹框出现')`。这会导致`alert`语句在`src`加载的脚本之前执行,可能因脚本未加载而导致错误。 正确写法:将`alert`语句移至`<script>`标签外或放置在`src`脚本加载后。 ```html <script src="./02.js"></script> <script> alert('弹框出现'); </script> ``` 2. **输出语句** 错误:使用`prompt`函数时没有提供提示信息。 正确写法: ```js prompt('请输入您的姓名'); ``` 3. **变量01** 错误:尝试重新声明同一个变量`age`。 正确写法:避免重复声明,可以合并成一行或使用不同的变量名。 ```js let age = 19; ``` 4. **变量02** 错误:`console.log`在变量声明之前使用,可能导致`age`未定义的错误。 正确写法:将`console.log`语句放在变量声明之后。 ```js let age = 18; console.log(age); ``` 5. **字符串01** 错误:在JavaScript中,字符串需用单引号`'`或双引号`"`包裹。 正确写法: ```js let username = '张三'; ``` 6. **字符串02** 错误:字符串的单引号`'`未闭合,且使用了不正确的引号组合。 正确写法: ```js let uname = '张三'; ``` 7. **数组** 错误:数组索引从0开始,要获取星期六,应使用索引`5`而不是`6`。 正确写法: ```js let arr = ['星期一', '星期二', '星期三', '星期四', '星期五', '星期六', '星期日']; console.log(arr[5]); ``` 8. **自增** 错误:`num+1`并未改变`num`的值,没有实现自增操作。 正确写法:使用自增运算符`++`。 ```js let num = 10; num++; ``` 9. **switch分支** 销误:每个`case`后缺少`break`语句,会导致多个`case`执行。 正确写法: ```js let num = prompt('请输入一个数字'); switch (num) { case '1': alert('用户您输入的是数字1'); break; case '2': alert('用户您输入的是数字2'); break; case '3': alert('用户您输入的是数字3'); break; default: alert('用户您输入的是非1、2、3的数字'); } ``` 10. **while循环** 错误:`while`循环条件后面缺少表达式。 正确写法:添加表达式`num<=5`。 ```js let num = 1; while (num <= 5) { document.write(`月薪过万不是梦<br/>`); num++; // 增加num以避免无限循环 } ``` 11. **for循环** 错误:`for`循环条件中缺少表达式。 正确写法:添加表达式`i<=3`并更新`i`以避免无限循环。 ```js for (let i = 1; i <= 3; i++) { document.write(`月薪过万不是梦<br/>`); } ``` 12. **遍历数组** 错误:`for`循环中`i<arr.length`的比较缺少操作符。 正确写法:添加等号`=`。 ```js let arr = ['马超', '赵云', '张飞', '关羽', '黄忠', '小黑', '小红']; for (let i = 0; i < arr.length; i++) { console.log(arr[i]); } ``` 以上是对各个错误代码的分析和修正,通过这些例子,我们可以更好地理解JavaScript语法的细节和常见错误,提升代码质量。