版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第10章异常和调试简约风格|程序设计主题|课堂教学版本章学习地图异常概述throw语句try...catchfinally调试工具课程重点理解异常与调试的意义。掌握throw和try...catch...finally。会使用开发者工具定位程序错误。课堂推进建议1概念导入2语法讲解3示例演示4随堂练习JavaScript程序设计|授课PPT1第10章学习目标与知识结构JavaScript程序设计|授课PPT2学习目标认识程序错误和异常的常见来源。理解抛出异常与捕获异常的过程。掌握try...catch...finally基本结构。了解Chrome开发者工具的调试功能。形成阅读错误信息和定位问题的习惯。本章内容结构1错误与异常2throw抛出异常3try代码块4catch捕获异常5finally收尾代码6Console调试7断点调试第10章为什么需要异常处理JavaScript程序设计|授课PPT3再熟练的程序员也会遇到程序错误。有些错误会导致程序中断,有些错误会让结果不正确。异常处理可以让程序在出错时给出明确提示。合理处理异常能提高程序的健壮性和用户体验。常见错误变量未定义。括号或引号不匹配。数据类型不正确。用户输入不合法。第10章常见错误类型JavaScript程序设计|授课PPT4项目含义/作用课堂关注点语法错误代码不符合语言语法规则。如少写括号、引号、关键字拼错。运行时错误程序运行到某处才发生错误。如访问未定义变量、调用不存在的方法。逻辑错误程序能运行,但结果不符合预期。最难发现,需通过测试和调试定位。第10章throw语句JavaScript程序设计|授课PPT5throw用于主动抛出异常。当发现数据不合法或状态不符合要求时,可以抛出异常。throw后程序会寻找能处理该异常的catch语句。主动抛出异常可以让错误更明确。适用情况成绩不在0~100。除数为0。输入为空。数组索引不合法。第10章try...catch结构JavaScript程序设计|授课PPT6讲解要点try中放可能发生错误的代码。catch用于捕获并处理异常。catch参数可接收异常对象。处理异常时应给出清晰提示。JavaScript示例try{console.log("Start");xixixi;console.log("End");}catch(e){console.log("发生异常:"+e.message);}console.log("程序继续执行");第10章finally代码块JavaScript程序设计|授课PPT7讲解要点finally中的语句无论是否发生异常都会执行。常用于清理资源、输出结束提示等。try、catch、finally组合能让流程更完整。JavaScript示例try{letn=Number(prompt("请输入数字:"));if(isNaN(n)){thrownewError("输入的不是数字");}console.log("输入合法:"+n);}catch(e){console.log(e.message);}finally{console.log("检查结束");}第10章异常处理流程JavaScript程序设计|授课PPT81执行try2发生异常3进入catch4处理异常5执行finally流程说明正常情况下,try中的语句按顺序执行。一旦发生异常,后续try语句可能被跳过。catch负责接住异常并处理。finally无论是否异常都会执行。第10章Chrome开发者工具调试JavaScript程序设计|授课PPT9Console面板可查看输出和错误信息。Sources面板可查看脚本文件并设置断点。断点能让程序暂停在指定语句,便于观察变量值。单步执行可帮助理解程序每一步如何运行。快捷思路先看错误行号。再看错误类型。最后检查变量值和执行顺序。第10章调试的基本方法JavaScript程序设计|授课PPT10阅读报错信息:错误类型、错误位置、错误原因。使用console.log()输出关键变量和中间结果。设置断点,逐步观察程序执行路径。从小范围开始排查,确认每一步结果是否符合预期。修复后再次测试,包括边界值和异常输入。边界值成绩:-1、0、60、100、101。数组:索引0、最后一个、越界索引。第10章综合示例:成绩输入检查JavaScript程序设计|授课PPT11讲解要点先输入成绩并转换为数值。检查是否为数字。检查是否在0~100范围内。异常由catch统一处理。JavaScript示例try{letscore=Number(prompt("请输入成绩:"));if(isNaN(score)){thrownewError("成绩必须是数字");}if(score<0||score>100){thrownewError("成绩范围应为0~100");}console.log("成绩有效:"+score);}catch(e){console.log("输入错误:"+e.message);}第10章课堂练习JavaScript程序设计|授课PPT12随堂练习/课后作业建议1运行一段含未定义变量的代码,观察错误信息。2为输入成绩程序增加异常处理。3使用throw判断除数是否为0。4使用console.log()调试一个求和循环。5在浏览器Sources面板设置断点并单步执行。第10章本章小结JavaScript程序设计|授课PPT13
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- T/CSBM 0033-2023骨接合植入物 可降解镁骨钉
- T/UNP 334-2024废弃电器电子产品回收规范
- T/GSEE 12-2024配电房智能化电气设计规范
- T/CI 803-2024虚拟商品交付平台 充值数据接口
- T/CADERM 8006-2024医疗急救辅助员队伍建设与管理要求
- T/CSAE 315.2-2024合作式智能运输系统 应用层交互技术要求 第2部分:感知数据共享
- AI在意大利语中的应用
- 2025~2026学年甘肃省定西市岷县北师大版三年级上册阶段性学习效果评估数学试卷【附答案】
- 2026学年湖南省津市市三年级数学期末模考高频题(详细参考解析)详细答案和解析
- 2025-2026学年江西省南昌市初中数学八年级期末下册高分预测提优特训题(详细参考解析)
- 注册安全工程师考试(初级)试卷与参考答案(2026年)
- 今天你光盘了吗 - 世界粮食日主题课件
- 肩周炎中医护理
- 2026年《计算机组成原理》培训试卷(含答案)
- 急性胆囊炎诊疗专家共识(2026版)
- 2026中国生物医药产业发展动态及投资前景预测报告
- 6.2 民主政治不断发展 课件(内嵌视频)2026-2027学年统编版道德与法治九年级上册
- 高三数学一轮复习《数列求和》教学设计
- 患者十大安全目标2025版(新)
- 重大会议保障及应急处置工作指南
- 2026北方联合电力限责任公司校园招聘易考易错模拟试题(共500题)试卷后附参考答案
评论
0/150
提交评论