前端开发面试题及代码实例解析.docxVIP

  • 0
  • 0
  • 约5.57千字
  • 约 13页
  • 2026-03-10 发布于福建
  • 举报

第PAGE页共NUMPAGES页

2026年前端开发面试题及代码实例解析

一、基础概念与原理(共5题,每题6分,总分30分)

1.题1(6分):解释什么是CSS盒模型,并说明`box-sizing:border-box`与`content-box`的区别及其应用场景。

答案与解析:

CSS盒模型由内容(content)、边框(border)、外边距(margin)组成。默认情况下,盒模型的宽度/高度仅指内容区域的宽高,边框和外边距会额外增加元素的总尺寸。

-`content-box`(默认):宽度/高度仅包含内容区域,边框和外边距会额外扩展元素尺寸。

-`border-box`:宽度/高度包含内容、边框和内边距,外边距独立扩展。

应用场景:

-`border-box`:电商产品卡片、布局容器,方便快速控制元素总尺寸。

-`content-box`:需要精确控制内容区域尺寸的场景,如文本长度限制。

2.题2(6分):简述HTTP缓存机制(强缓存、协商缓存)的工作原理及`Cache-Control`、`ETag`、`Expires`的作用。

答案与解析:

HTTP缓存分为强缓存和协商缓存:

-强缓存:直接从缓存返回资源,无需请求服务器。

-`Cache-Control`:控制缓存策略(如`max-age=3600`表示缓存1小时)。

-`Expires`:过期时间字段(HTTP1.0已不推荐)。

-协商缓存:先向服务器发送请求,服务器根据`ETag`或`Last-Modified`判断是否返回新资源。

-`ETag`:资源唯一标识,若未变化则返回304。

-`Last-Modified`:资源最后修改时间。

3.题3(6分):说明JavaScript中的事件冒泡与事件委托的优缺点及适用场景。

答案与解析:

-事件冒泡:子元素事件向上传递至父元素,性能开销大(大量事件绑定)。

-优点:减少全局绑定。

-缺点:需在冒泡阶段截断(`stopPropagation`)。

-事件委托:在父元素上绑定事件,利用事件冒泡处理子元素。

-优点:减少DOM操作,动态绑定。

-缺点:子元素需先存在。

适用场景:

-事件委托:动态列表、长滚动页面(如`scroll`事件)。

-事件冒泡:简单静态布局。

4.题4(6分):解释什么是同源策略及其限制,如何突破(CORS、JSONP、WebSocket)。

答案与解析:

同源策略禁止跨域请求,限制`document.domain`、`window.location`等属性访问。突破方法:

-CORS:通过`Access-Control-Allow-Origin`响应头实现。

-JSONP:动态`script`标签绕过同源,仅支持GET请求。

-WebSocket:协议本身不限制跨域。

5.题5(6分):简述WebWorkers的作用及适用场景。

答案与解析:

WebWorkers允许在后台线程运行脚本,不阻塞主线程。

-优点:提升复杂计算性能(如视频转码)。

-缺点:无法访问DOM。

适用场景:数据处理、复杂计算。

二、前端框架与库(共5题,每题6分,总分30分)

1.题6(6分):比较React和Vue的核心差异(虚拟DOM实现、生命周期、状态管理)。

答案与解析:

-虚拟DOM:React全量更新,Vue按需渲染(`VirtualDOM`vs`HMR`)。

-生命周期:React使用`useEffect`,Vue分`beforeMount`/`mounted`。

-状态管理:React(`Redux`/`Context`),Vue(`Vuex`/`Pinia`)。

2.题7(6分):简述Vue3的`CompositionAPI`与`OptionsAPI`的区别及优势。

答案与解析:

-`OptionsAPI`:分散在`data`/`methods`中,适合简单组件。

-`CompositionAPI`:逻辑聚合(如`setup`函数),增强可读性。

优势:按需引入,代码组织更灵活。

3.题8(6分):解释React中的`React.memo`、`useMemo`、`useCallback`的作用及区别。

答案与解析:

-`React.memo`:组件级别浅比较(防重渲染)。

-`useMemo`:缓存计算结果(避免重复计算)。

-`useCallback`:缓存函数引用(避免子组件不必要的重渲染)。

4.题9(6分):简述Angular的生命周期钩子(`ngOnInit`、`ngDoCheck`)与React的`useEffect`对应关系。

答案与解析:

-Angular:`ngOnI

文档评论(0)

1亿VIP精品文档

相关文档