React

React 框架相关

1.
为什么推荐将静态资源放到 CDN 上

了解 CDN 的工作原理和使用静态资源 CDN 的优势

2.
Class 组件的局限性

React Class 组件存在的问题及 Hooks 如何解决

3.
Class 组件与函数组件

React 中 Class 组件和函数组件的区别与使用场景

4.
Composition API 与 Hooks 对比

Vue 3 Composition API 和 React Hooks 的异同点分析

5.
Vue 中 computed 和 watch 的区别

computed 和 watch 的使用场景、特性对比及实现方式

6.
爬楼梯问题

计算爬 n 阶楼梯的方法数,使用动态规划和斐波那契数列求解

7.
createElement 执行过程

React createElement 函数的执行流程和实现原理

8.
限制构造函数只能通过 new 调用

三种方法确保构造函数必须使用 new 调用,避免普通函数调用

9.
判断 React 组件类型

如何在代码中区分 class component 和 function component

10.
受控与非受控组件

React 中受控组件和非受控组件的区别与使用场景

11.
自定义 Hook 开发

React 自定义 Hook 的概念、规则和常见实现

12.
什么是 DNS 劫持?

了解 DNS 劫持的原理、常见攻击手段及其对业务的影响

13.
判断对象是否是 React 元素

使用 React.isValidElement() 方法判断对象是否为 React 元素

14.
HOC 与 Render Props

React 中两种代码复用模式的区别与使用场景

15.
React 中 Element、Component、Node、Instance 的区别

理解 React 中四个核心概念的含义和关系

16.
Hooks 使用规则

React Hooks 的两条核心规则及常见错误

17.
HTTP/2 多路复用原理

HTTP/2 如何通过二进制帧实现多路复用

18.
HTTP 报文结构

HTTP 请求报文和响应报文的组成部分及格式规范

19.
HTTPS 握手过程

通过 Wireshark 抓包分析 HTTPS 完整的握手流程

20.
Immutable 在 React 中的应用

理解 Immutable 数据结构及其在 React 项目中的使用方法

21.
实现图片懒加载

使用原生 HTML、JavaScript 和 IntersectionObserver API 实现图片懒加载

22.
JavaScript == 运算符的机制

通过图形化方式理解 == 运算符的类型转换规则

23.
JavaScript 数组的内存存储方式

了解 JS 数组在堆栈中的存储机制和 V8 引擎的优化策略

24.
JSX 本质

JSX 是什么,如何被编译,最终变成什么

25.
Immutable 在 React 中的应用

理解 Immutable 数据结构及其在 React 项目中的使用方式

26.
最大子序和

使用动态规划和分治法求解数组中连续子数组的最大和

27.
React Router 的 Link 和 a 标签的区别

Link 组件通过拦截默认行为实现单页面应用的路由跳转,避免页面刷新

28.
JSX语法糖本质

理解 JSX 到 JavaScript 的转换过程

29.
父组件调用子组件方法

使用 ref 和 useImperativeHandle 实现父组件调用子组件方法

30.
移动端样式适配方案

使用媒体查询、弹性布局等方式实现移动端样式适配

31.
Portal 中的事件冒泡机制

React Portal 渲染到其他 DOM 节点后,事件是否还能冒泡到父组件

32.
React 17 新特性

React 17 的主要变化和升级要点

33.
React 18 新特性与并发渲染

React 18 的核心更新:自动批处理、Transitions、Suspense 改进和并发渲染机制

34.
React 组件渲染流程

React 组件从触发更新到页面渲染的完整过程

35.
React 是什么

理解 React 的设计思想和工作原理

36.
React元素$$typeof属性

理解React使用$$typeof防止XSS攻击的机制

37.
React 组件通信方式

Props、Context、Redux、Ref 四种组件通信方式的使用场景和实现

38.
React 错误边界处理

使用 Error Boundary 统一捕获 React 组件错误

39.
React 核心概念

React 常见面试题及解答

40.
React 组件设计

React 组件设计的原则和实践方法

41.
React Fiber 架构

理解 Fiber 的链表结构、时间切片和可中断渲染机制

42.
React Hooks 原理与规则

理解 Hooks 的链表存储机制和调用规则

43.
React 常用 Hooks 使用指南

useState、useEffect、useMemo、useCallback、useRef、useContext 的用法与示例

44.
React.memo 和 memoize 函数的区别

React.memo 和 JavaScript memoize 函数在缓存机制和使用场景上的差异

45.
React 生命周期演变

对比 React 旧版 Will 系列与新版生命周期方法

46.
React 性能优化实践

实际项目中常用的 React 性能优化方法

47.
React 性能优化策略

PureComponent、React.memo、useMemo、useCallback 的使用场景和实践

48.
React Portals 的使用场景

将组件渲染到父组件 DOM 层次之外的位置

49.
React 中的 ref 使用

理解 ref 的作用和在不同场景下的使用方式

50.
React 和 React-DOM 的关系

理解 React 核心库与 DOM 渲染库的分工

51.
React 为什么不直接使用 requestIdleCallback

React 选择自己实现 Scheduler 而非直接使用 requestIdleCallback 的原因

52.
React-Router 原理与工作方式

React-Router 的路由模式、实现原理和简易实现

53.
React 合成事件机制

React 事件委托和事件池的工作原理

54.
React 服务端渲染实现

手动搭建 React SSR 框架的完整流程和原理

55.
React 事务机制

React 15 中用于批量更新的事务机制原理

56.
setState 同步异步问题

React 中 setState 在不同场景下的执行时机和批处理机制

57.
setTimeout 为什么不能保证及时执行

理解 JavaScript 事件循环机制和 setTimeout 的执行时机

58.
Redux 工作流与中间件

Redux 的 Store、Action、Reducer 工作流程及 Thunk、Saga 中间件原理

59.
React 服务端渲染实现

手动搭建 React SSR 框架的完整流程和原理

60.
单页应用如何提高加载速度

通过代码分割、缓存、预加载等技术优化 SPA 加载性能

61.
Source Map 的工作原理

了解 Source Map 如何建立源代码与压缩代码的映射关系

62.
TypeScript 中的命名空间与模块

理解 TypeScript 命名空间和模块的概念及使用场景

63.
Taro 多端框架实现原理

Taro 如何通过编译和运行时适配实现一套代码多端运行

64.
Taro 2.x 和 Taro 3 的区别

Taro 2.x 和 Taro 3 在编译方式、React 版本、API 和性能方面的主要差异

65.
TypeScript 与 JavaScript 的区别

理解 TypeScript 的特性以及它与 JavaScript 的关系

66.
TCP 三次握手和四次挥手

TCP 连接建立和断开的过程及原理

67.
useEffect 支持 async/await

在 useEffect 中正确使用异步函数的方法

68.
useEffect 闭包陷阱

理解 React useEffect 中的闭包问题及解决方案

69.
useMemo 和 useCallback 的使用场景

分析 React 性能优化 Hook 的正确使用时机和常见误区

70.
useContext 的使用方法

理解 React useContext 的作用和使用场景

71.
useReducer 与 Redux 对比

分析 useReducer 和 Redux 的区别,以及各自适用场景

72.
useState 连续调用 setState 导致值丢失

解决 React useState 中连续调用 setState 时状态更新丢失的问题

73.
实现 useTimeout Hook

在 React 函数组件中正确使用 setTimeout 的自定义 Hook

74.
useRef、ref 和 forwardRef 的区别

React 中三种 ref 相关 API 的使用场景和区别

75.
虚拟DOM性能分析

分析虚拟DOM的性能特点,理解它快与慢的场景

76.
实现 useUpdate 强制组件重新渲染

使用 useReducer 实现强制 React 组件重新渲染的自定义 Hook

77.
Virtual DOM 的意义

理解 Virtual DOM 存在的原因和工作原理

78.
虚拟DOM的三个组成部分

虚拟DOM的结构、diff算法和patch过程

79.
Virtual DOM 与 Diff 算法

理解 Virtual DOM 原理、Diff 算法实现及 React key 的作用

80.
Vue 页面渲染流程

Vue 从挂载组件到生成真实 DOM 的完整渲染过程

81.
Vue 与 React 对比

从响应式、模板语法、数据流三个维度对比 Vue 和 React

82.
Vue 与 React 的 Diff 算法差异

对比 Vue 和 React 虚拟 DOM diff 算法的实现策略

83.
Vue2 数组变化检测的限制与解决方案

Vue2 为什么不能检测数组索引变化,以及如何解决数组和对象的响应式问题

84.
Vue3 实现 Modal 组件

使用 Vue3 设计和实现一个可复用的 Modal 弹窗组件