前端工程师面试题整理(1)

本文详细阐述了XHTML与HTML的区别,深入探讨了Web标准的三个核心方面:结构、表现和行为,并介绍了常见的浏览器内核及HTTP状态码含义。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.        XHTML 与 HTML 之间的差异

XHTML 元素必须被正确地嵌套。

XHTML 元素必须被关闭。

标签名必须用小写字母。

XHTML 文档必须拥有根元素。

2.        谈谈你对web标准的理解与认识

web标准简单来说可以分为结构、表现和行为。其中结构主要是有HTML标签组成。或许通俗点说,在页面body里面我们写入的标签都是为了页面的结构。表现即指css样式表,通过css可以是页面的结构标签更具美感。行为是指页面和用户具有一定的交互,同时页面结构或者表现发生变化,主要是有js组成。

web标准一般是将该三部分独立分开,使其更具有模块化。但一般产生行为时,就会有结构或者表现的变化,也使这三者的界限并不那么清晰。

W3C对web标准提出了规范化的要求,也就是在实际编程中的一些代码规范,包含如下几点:

对于结构要求(标签规范可以提高搜索引擎对页面的抓取效率,对SEO很有帮助)

l  标签字母要小写

l  标签要闭合

l  标签不允许随意嵌套

对于css和js来说,

l  尽量使用外链css样式表和js脚本。是结构、表现和行为分为三块,符合规范。同时提高页面渲染速度,提高用户的体验。

l  样式尽量少用行间样式表,使结构与表现分离,标签的id和class等属性命名要做到见文知义,标签越少,加载越快,用户体验提高,代码维护简单,便于改版。

l  不需要变动页面内容,便可提供打印版本而不需要复制内容,提高网站易用性。

3.        浏览器内核

l  IE浏览器内核:Trident内核,也是俗称的IE内核;

l  Chrome浏览器内核:统称为Chromium内核或Chrome内核,以前是Webkit内核,现在是Blink内核;

l  Firefox浏览器内核:Gecko内核,俗称Firefox内核;

l  Safari浏览器内核:Webkit内核;

l  Opera浏览器内核:最初是自己的Presto内核,后来是Webkit,现在是Blink内核;

l  360浏览器、猎豹浏览器内核:IE+Chrome双内核;

l  搜狗、遨游、QQ浏览器内核:Trident(兼容模式)+Webkit(高速模式);

l  百度浏览器、世界之窗内核:IE内核;

l  2345浏览器内核:以前是IE内核,现在也是IE+Chrome双内核

4.        HTTP状态码

l  1**  信息,服务器收到请求,需要请求者继续执行操作

l  2**  成功,操作被成功接收并处理

l  3**  重定向,需要进一步的操作以完成请求

l  4**  客户端错误,请求包含语法错误或无法完成请求

l  5**  服务器错误,服务器在处理请求的过程中发生了错误

 

参考

http://www.runoob.com/http/http-status-codes.html

https://blog.youkuaiyun.com/dufufd/article/details/53112184

5.        简述你对HTML语义化的理解

用正确的标签做正确的事情。

html语义化让页面的内容结构化,结构更清晰,便于对浏览器、搜索引擎解析;即使在没有样式CCS情况下也以一种文档格式显示,并且是容易阅读的;搜索引擎的爬虫也依赖于HTML标记来确定上下文和各个关键字的权重,利于SEO;阅读源代码的人对网站更容易将网站分块,便于阅读维护理解。

6.        Doctype作用是什么?

<!DOCTYPE>声明叫做文件类型定义(DTD),声明的作用为了告诉浏览器该文件的类型。让浏览器解析器知道应该用哪个规范来解析文档。<!DOCTYPE>声明必须在 HTML 文档的第一行,这并不是一个 HTML 标签。

7.        严格模式与混杂模式如何区分?它们有何意义?

严格模式:又称标准模式,是指浏览器按照 W3C 标准解析代码。

混杂模式:又称怪异模式或兼容模式,是指浏览器用自己的方式解析代码。

如何区分:浏览器解析时到底使用严格模式还是混杂模式,与网页中的 DTD 直接相关。

1、如果文档包含严格的 DOCTYPE ,那么它一般以严格模式呈现。(严格 DTD ——严格模式)

2、包含过渡 DTD 和 URI 的 DOCTYPE ,也以严格模式呈现,但有过渡 DTD 而没有 URI (统一资源标识符,就是声明最后的地址)会导致页面以混杂模式呈现。(有 URI 的过渡 DTD ——严格模式;没有 URI 的过渡 DTD ——混杂模式)

3、DOCTYPE 不存在或形式不正确会导致文档以混杂模式呈现。(DTD不存在或者格式不正确——混杂模式)

4、HTML5 没有 DTD ,因此也就没有严格模式与混杂模式的区别,HTML5 有相对宽松的语法,实现时,已经尽可能大的实现了向后兼容。( HTML5 没有严格和混杂之分)

意义:严格模式与混杂模式存在的意义与其来源密切相关,如果说只存在严格模式,那么许多旧网站必然受到影响,如果只存在混杂模式,那么会回到当时浏览器大战时的混乱,每个浏览器都有自己的解析模式。

8.        严格模式与混杂模式的语句解析不同点有哪些?

1)  盒模型的高宽包含内边距padding和边框border。

在W3C标准中,如果设置一个元素的宽度和高度,指的是元素内容的宽度和高度,而在IE5.5及以下的浏览器及其他版本的Quirks模式下,IE的宽度和高度还包含了padding和border。

2)可以设置行内元素的高宽

在Standards模式下,给span等行内元素设置wdith和height都不会生效,而在quirks模式下,则会生效。

3)可设置百分比的高度

在standards模式下,一个元素的高度是由其包含的内容来决定的,如果父元素没有设置高度,子元素设置一个百分比的高度是无效的。

4)用margin:0 auto设置水平居中在IE下会失效

使用margin:0 auto在standards模式下可以使元素水平居中,但在quirks模式下却会失效,quirk模式下的解决办法,用text-align属性:body{text-align:center};#content{text-align:left}。

5)quirk模式下设置图片的padding会失效

6)quirk模式下Table中的字体属性不能继承上层的设置

7)quirk模式下white-space:pre会失效

9.      什么是JavaScript?

JavaScript是客户端和服务器端脚本语言,可以插入到HTML页面中,并且是目前较热门的Web开发语言。同时,JavaScript也是面向对象编程语言。

10.  JavaScript的数据类型

JavaScript中有六种数据类型,包括五种基本数据类型(Number,String,Boolean,Undefined,Null),和一种复杂数据类型(Object)。

 

### 回答1: 高级前端工程师面试题答案pdf是一份面试指南,涵盖了高级前端工程师常见的面试题和对应的答案。这份文档可帮助求职者更好地准备和应对前端工程师面试。 在高级前端工程师面试中,通常会涉及以下几个方面的问题和答案: 1.技术能力和经验:面试官可能会问求职者对于前端开发的技术栈和常用工具的熟悉程度,以及对于特定技术的实践经验。求职者可以根据自己的实际经验和学习情况,结合项目经历和个人技能,详细解答自己对于前端技术的了解和应用。 2.项目经验和解决方案:面试官可能会询问求职者在实际项目中遇到的挑战和解决方案。求职者可以选择一个具体的项目,介绍自己在其中遇到的问题,并详细说明自己是如何解决这些问题的,包括技术方案和团队协作等方面。 3.团队合作和沟通能力:高级前端工程师通常需要与设计师、产品经理和后端工程师等进行密切合作,因此面试官可能会询问求职者在团队中的角色和贡献,以及自己与其他岗位之间的沟通和协调能力。求职者可以列举具体的案例,说明自己在团队中的合作经验和有效沟通的能力。 4.面试题面试官会可能出一些具体的问题,涉及到前端的核心知识点,如HTML、CSS、JavaScript等。求职者需要根据题目的要求,做出清晰、准确的回答,并且能够展示出自己的思考过程和解决问题的能力。 总之,高级前端工程师面试题答案pdf是一份指导性的资料,帮助求职者更好地理解和准备面试。求职者应该根据自己的实际情况和经验,对文档中的问题进行仔细准备,并能够以清晰、有条理的方式进行回答。 ### 回答2: 高级前端工程师面试题答案pdf是一份包含了高级前端工程师面试题的答案的PDF文件。该文件通常由面试官根据候选人在面试中所回答的问题和表现整理而成。以下是一些可能包含在高级前端工程师面试题答案pdf中的内容: 1. 前端技术栈:一般会列出候选人熟悉的前端技术栈,包括HTML、CSS、JavaScript、React、Vue等。 2. 项目经验:候选人在过去的项目中的具体经验和工作职责。包括项目的规模、使用的技术、解决的问题等。 3. 前端框架和库的使用:候选人熟悉的前端框架和库,如React、Vue、Angular等,并列举过去项目中如何使用这些框架和库。 4. 前端性能优化:候选人在前端性能优化方面的实践经验,包括代码优化、资源优化、图片压缩、懒加载等技巧。 5. 数据可视化:候选人在数据可视化方面的经验,如使用D3.js等工具进行数据图表的绘制和展示。 6. 前端安全:候选人对前端安全的了解和实践经验,如防止XSS攻击、CSRF攻击等。 7. 前端工程化:候选人在前端工程化方面的实践经验,如构建工具的使用、模块化开发、持续集成等。 8. 前端团队协作:候选人在团队协作方面的经验,如与设计师、后端工程师的沟通与配合,参与项目管理和代码审查等。 高级前端工程师面试题答案pdf是候选人展示自己专业知识和实践经验的重要材料,面试官可以通过阅读该文件评估候选人的技术能力和项目经验,从而做出招聘决策。 ### 回答3: 高级前端工程师面试题答案pdf是一份包含高级前端工程师面试题的答案的pdf文档。这份文档可能包含了许多常见的高级前端工程师面试题以及它们的详细答案。 高级前端工程师面试题通常涵盖广泛的主题,包括但不限于HTML、CSS、JavaScript、前端框架、性能优化、移动端开发等。这些问题的答案可以提供对面试官展示自己技能和知识水平的机会。 在回答高级前端工程师面试题时,关键是要清晰而且详细地回答问题。答案应该经过仔细思考和正确的技术知识支持,以展现自己的专业水平。 此外,在准备面试时,应该对常见的高级前端工程师面试题进行彻底的了解,并在实际开发中多加练习和应用。这样可以更好地理解和回答面试中的问题,并展示出自己的实际经验和解决问题的能力。 总而言之,高级前端工程师面试题答案pdf可以帮助候选人更好地准备面试,展示自己的技能与知识水平,并增加通过面试的机会。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值