### JavaScript前端面试笔试知识点解析 #### 一、基础语法与概念 **1. 产生运行错误的语句** - **选项(a)** `var obj = ();`:这行代码会产生一个语法错误,因为圆括号通常用于函数调用或创建空的函数表达式,而这里试图将其赋值给变量`obj`。 - **选项(b)** `var obj = [];`:正确,创建了一个空数组。 - **选项(c)** `var obj = {};`:正确,创建了一个空对象。 - **选项(d)** `var obj = /;/;`:正确,创建了一个正则表达式。 **2. 不属于JavaScript保留字的单词** - **选项(a)** `with`:是保留字。 - **选项(b)** `parent`:不是保留字,它是一个内置对象。 - **选项(c)** `class`:ES6 引入的保留字。 - **选项(d)** `void`:是保留字。 **3. 结果为真的表达式** - **选项(a)** `null instanceof Object`:假,`null`不是任何类的实例。 - **选项(b)** `null === undefined`:假,两者类型不同。 - **选项(c)** `null == undefined`:真,宽松比较相等。 - **选项(d)** `NaN == NaN`:假,NaN不等于任何值,包括自身。 **4. 对JavaScript理解有误的选项** - **选项(a)** `JScript`是微软的JavaScript实现,并非简写。 - **选项(b)** `JavaScript`是由网景公司开发的,但与Java没有关系。 - **选项(c)** 浏览器间的兼容性问题主要源于DOM/CSS差异,而非JavaScript本身。 - **选项(d)** AJAX不一定需要JavaScript,也可以使用其他技术实现。 #### 二、对象属性访问与HTML标签 **5. 获取对象属性的方法** - **选项(a)** `foo.att`:直接访问属性。 - **选项(b)** `foo("att")`:无效,因为`foo`不是一个函数。 - **选项(c)** `foo["att"]`:使用字符串键名访问属性。 - **选项(d)** `foo{"att"}`:语法错误。 - **选项(e)** `foo["a" + "t" + "t"]`:动态构建键名并访问属性。 **6. 可以手动输入文本的HTML标签** - **选项(a)** `<textarea>`:允许用户输入多行文本。 - **选项(b)** `<input type='text'>`:允许用户输入单行文本。 - **选项(c)** `<input type='hidden'>`:隐藏输入字段,不允许用户直接输入。 - **选项(d)** `<div>`:非输入标签,不能直接用于文本输入。 **7. JavaScript全局函数** - **选项(a)** `escape`:用于编码URL。 - **选项(b)** `parseFloat`:将字符串转换为浮点数。 - **选项(c)** `eval`:执行字符串形式的JavaScript代码。 - **选项(d)** `setTimeout`:定时执行函数。 - **选项(e)** `alert`:显示警告框。 #### 三、IFrame与表格 **8. IFrame相关知识点** - **选项(a)** 通过`iframe`可以嵌入其他网页内容。 - **选项(b)** 在相同域名下,内嵌的`iframe`可以获取外层网页的对象。 - **选项(c)** 在相同域名下,外层网页脚本可以获取`iframe`内的对象。 - **选项(d)** 可以通过脚本调整`iframe`的大小。 **9. 表格相关知识点** - **选项(a)** 表格中可以包含`<tbody>`元素。 - **选项(b)** 表格中可以包含`<caption>`元素,用于标题。 - **选项(c)** 表格中可以包含多个`<tbody>`元素。 - **选项(d)** 表格中可以包含`<colgroup>`元素,用于定义列样式。 - **选项(e)** 表格中可以包含`<col>`元素,用于定义单个列的样式。 #### 四、IE的Window对象 **10. IE的Window对象知识点** - **选项(a)** `window.opener`属性指向打开当前窗口的窗口对象。 - **选项(b)** `window.reload()`不存在,应使用`location.reload()`来刷新页面。 - **选项(c)** `window.location="a.html"`和`window.location.href="a.html"`都将当前页面替换为`a.html`。 - **选项(d)** 定义全局变量`g`后,可通过`window.g`方式访问。 #### 五、深入理解 **11. 数组排序方法sort()的使用** - `sort()`方法用于对数组元素进行排序,默认情况下,`sort()`会将数组元素转换成字符串,然后按照字典顺序进行排序。 - 通过传递自定义的比较函数作为参数,可以改变排序行为: - 比较函数接收两个参数`a`和`b`,如果`a`应该排在`b`前面,则返回负数;如果`a`应该排在`b`后面,则返回正数;如果两者相等,则返回0。 **12. DIV元素和SPAN元素的区别** - **DIV**:块级元素,独占一行,常用于布局。 - **SPAN**:行内元素,不独占一行,常用于对文本进行样式控制。 **13. innerHTML、outerHTML、innerText之间的区别** - **innerHTML**:获取或设置元素内部的所有HTML代码。 - **outerHTML**:获取或设置元素及其所有子元素的HTML代码。 - **innerText**:获取或设置元素内部的所有纯文本内容,忽略HTML标签。 **14. XHTML规范的内部** - **XHTML**是HTML的一个XML版本,更注重文档的结构化和规范化。 - XHTML文档必须是**良好形成的**(Well-formed),即标签必须闭合,属性值必须加引号。 - XHTML中不允许使用未关闭的标签,如`<br>`必须写作`<br />`。 - 属性名称必须小写。 - 使用命名空间以确保与XML的兼容性。 - 文档必须有一个根元素,通常是`<html>`元素,并且必须定义文档类型声明(DTD)。 - 避免使用HTML中的非标准标签或属性,以确保跨浏览器的一致性。
- 粉丝: 767
- 资源: 70
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助