JavaScript面试精华:基础语法与继承、异常处理详解
需积分: 9 85 浏览量
更新于2024-09-09
2
收藏 183KB PDF 举报
在JavaScript面试中,面试官可能会关注候选人的基础知识和理解深度。以下是一些关键知识点的详细解析:
1. 函数作用与返回值:在提供的代码片段中,`add`函数分别被调用两次,但没有显式地返回值。这会导致`y`和`z`的值都是`undefined`,因为这两个变量只是对`add`函数的引用,并没有保存函数执行后的结果。正确的方式是将函数修改为返回值,例如`return n+1`。
2. 面向对象与原型继承:JavaScript虽然不是纯的类-based语言,但支持原型链(prototype)来实现继承。通过在构造函数的prototype上定义属性和方法,子类可以访问和扩展父类的功能。
3. DOM操作:要选中并设置checkbox为无效,可以使用DOM操作,如`document.all.cb1[0]`获取元素,然后调用`.disabled = true`来禁用它。
4. input属性差异:`readonly`和`disabled`都用于限制用户交互,但有不同效果。`readonly`阻止文本输入但允许其他交互(如选择和复制),数据不会提交到服务器;而`disabled`则完全禁止交互,包括读取和写入,且数据不提交。
5. 弹出消息框:JavaScript提供了三个内置的提示方法:
- `alert`:显示警告对话框,暂停执行直到用户关闭。
- `confirm`:显示带有确认和取消按钮的消息,返回用户的选择。
- `prompt`:显示输入对话框,等待用户输入,返回输入的值。
6. form输入类型:form中的`input`元素类型包括`text`, `password`, `checkbox`, `radio`, `textarea`, 等等,根据实际需求选择合适的类型。
7. 变量作用域:JavaScript有两种变量范围:
- 全局变量:在整个页面范围内可用,生命周期贯穿整个页面。
- 局部变量:只在函数内部或特定代码块内有效,函数执行完毕后释放。
8. 数据类型:JavaScript主要数据类型包括`string`, `boolean`, `number`。复合数据类型包括函数(函数作为一等公民)、对象(包括数组、null等)。特殊数据类型包括`undefined`, `null`, 和`NaN`。
9. 异常处理:使用`try-catch-finally`结构捕获和处理程序中的异常。`try`块包含可能抛出异常的代码,`catch`块捕获异常,`finally`块确保清理工作始终被执行。
10. Date对象:`DateDemo`函数返回当前系统日期(假定为2010年7月17日),通过`getMonth()`, `getDate()`, 和`getYear()`方法获取各个部分。
11. 循环陷阱:循环结构`for`中的变量更新问题,当`i`和`j`同时递增时,`k`的值会在第六次迭代时变为10,因为`j`先于`i`达到6,结束循环。
12. 变量声明:在`hi`函数中,未声明`a`就尝试访问,会返回`undefined`,因为`a`是未初始化的。
13. 字符串常量:`hi`函数中,尝试用`nul`赋值给`a`,`nul`不是有效的JavaScript关键字,应该是空字符串`''`。正确的代码应为`vara = ''`。
2018-12-07 上传
2008-09-10 上传
2010-04-10 上传
2023-09-09 上传
2019-04-13 上传
2021-04-06 上传
qq_26454833
- 粉丝: 0
- 资源: 1
最新资源
- IEEE 14总线系统Simulink模型开发指南与案例研究
- STLinkV2.J16.S4固件更新与应用指南
- Java并发处理的实用示例分析
- Linux下简化部署与日志查看的Shell脚本工具
- Maven增量编译技术详解及应用示例
- MyEclipse 2021.5.24a最新版本发布
- Indore探索前端代码库使用指南与开发环境搭建
- 电子技术基础数字部分PPT课件第六版康华光
- MySQL 8.0.25版本可视化安装包详细介绍
- 易语言实现主流搜索引擎快速集成
- 使用asyncio-sse包装器实现服务器事件推送简易指南
- Java高级开发工程师面试要点总结
- R语言项目ClearningData-Proj1的数据处理
- VFP成本费用计算系统源码及论文全面解析
- Qt5与C++打造书籍管理系统教程
- React 应用入门:开发、测试及生产部署教程