前端面试问题及答案整理

D
dashi85 2023-02-12T20:01:10+08:00
0 0 161

面试是前端工作求职过程中非常重要的一环,因此准备充分是十分关键的。下面整理了一些常见的前端面试问题及其答案,希望能够对大家有所帮助。

1. HTML 相关问题

1.1 HTML5有哪些重要的新特性?

  • 语义化标签:例如<header><nav><footer>等。
  • 音视频元素:<video><audio>可以在网页中直接播放音视频。
  • 本地存储:localStoragesessionStorage可以用来在浏览器端存储数据。
  • 表单增强:新增的表单元素,如<input type="date"><input type="email"><input type="number">等。

1.2 什么是语义化标签?

语义化标签是指在HTML中使用具有明确意义的标签,能够更好地描述网页文档结构。语义化标签不仅能够提高代码的可读性,而且能够使搜索引擎更好地理解网页内容,提升网页的SEO。

1.3 <script>标签有哪些使用方式?

  • 直接在HTML中使用<script>标签,将JavaScript代码写在<script>标签内部。
  • 将JavaScript代码封装到外部文件中,然后通过src属性引入文件,如<script src="script.js"></script>

1.4 deferasync有什么区别?

  • defer属性用于延迟脚本的执行,脚本会在文档完全解析和显示之后再执行。
  • async属性用于异步加载脚本,脚本的加载和文档解析可以同时进行,脚本加载完成后立即执行。

2. CSS 相关问题

2.1 CSS盒模型有哪些?

CSS盒模型由内容区域、内边距、边框和外边距组成。

2.2 什么是BFC(块级格式化上下文)?

BFC是一种Web页面布局方式,在BFC中,页面上的元素会按照一定规则进行排列和布局。BFC可以解决一些常见的布局问题,如垂直外边距折叠、浮动元素的高度塌陷等。

2.3 如何清除浮动?

清除浮动可以用于解决父元素高度坍塌的问题。

以下是几种常见的清除浮动的方式:

  • 使用额外的元素进行清除,如<div style="clear: both;"></div>
  • 使用伪元素进行清除,如.clearfix::after {content: ""; display: block; clear: both;}
  • 使用overflow: hidden;清除浮动(注意会触发BFC)。

3. JavaScript 相关问题

3.1 常见的数据类型有哪些?

JavaScript中的常见数据类型有UndefinedNullBooleanNumberStringObjectSymbol

3.2 =====有什么区别?

  • ==用于比较值是否相等,会进行隐式类型转换。
  • ===用于比较值和类型是否完全相等,不会进行隐式类型转换。

3.3 什么是闭包?

闭包是指有权访问另一个函数作用域中的变量的函数。常见的应用包括封装私有变量和在函数内部创建定时器。

4. 其他问题

4.1 什么是响应式设计?

响应式设计是一种能够在不同设备上提供最佳用户体验的设计方式。通过使用媒体查询、弹性网格布局、图片和字体的自适应等技术,使得网页能够根据用户设备的不同进行自动适配。

4.2 什么是跨域?

跨域是指在浏览器中,通过脚本访问另一个域名下的资源时,由于浏览器的安全策略,会受到限制。解决跨域问题可以使用CORS(跨域资源共享)或JSONP(JSON with padding)等方式。

以上是一些常见的前端面试问题及其答案整理,希望能够对大家在前端面试中有所帮助。祝大家面试顺利!

相似文章

    评论 (0)