墙裂推荐!超全React 面试题总结,满满都是干货!

695 阅读3分钟

前言

React 是一个用于构建用户界面的 JavaScript 库,起源于Facebook 的内部项目。React 主要用于构建 UI。你可以在 React 里传递多种类型的参数,如声明代码,帮助你渲染出 UI、也可以是静态的 HTML DOM 元素、也可以传递动态变量、甚至是可交互的应用组件。

React 特点

  • React 采用声明范式,可以轻松描述应用。
  • React 通过对 DOM 的模拟,最大限度地减少与 DOM 的交互。
  • React 可以与已知的库或框架很好地配合。

React 面试题总结

基本知识

  • 区分Real DOM和Virtual DOM
  • 什么是React?
  • React有什么特点?
  • 列出React的一些主要优点。
  • React有哪些限制?
  • 什么是JSX?
  • 你了解 Virtual DOM 吗?解释一下它的工作原理。
  • 为什么浏览器无法读取JSX?
  • 与 ES5 相比,React 的 ES6 语法有何不同?
  • React与Angular有何不同?
  • React如何性能优化
  • react与vue的对比
  • 使用React Hooks有什么优势?
  • React中的useState?

React 组件

组件,从概念上类似于 JavaScript 函数。它接受任意的入参(即 “props”),并返回用于描述页面展示内容的 React 元素。

  • 你理解“在React中,一切都是组件”这句话。
  • 解释 React 中 render() 的目的。
  • 如何将两个或多个组件嵌入到一个组件中?
  • 什么是 Props?
  • state 和 props有什么区别?
  • React中的状态是什么?它是如何使用的?
  • 区分状态和 props
  • 如何更新组件的状态?
  • 为什么不直接更新state状态?
  • React context是什么?
  • constructor中super与props参数一起使用的目的是什么?
  • React 中的箭头函数是什么?怎么用?
  • 区分有状态和无状态组件。
  • React组件生命周期的阶段是什么?
  • 详细解释 React 组件的生命周期方法。
  • React中的事件是什么?
  • 如何在React中创建一个事件?
  • React中的合成事件是什么?
  • 你对 React 的 refs 有什么了解?
  • 列出一些应该使用 Refs 的情况。
  • React中的refs作用是什么?
  • 如何创建refs?
  • 如何模块化 React 中的代码?
  • 如何在 React 中创建表单
  • 你对受控组件和非受控组件了解多少?
  • 什么是高阶组件(HOC)?
  • 你能用HOC做什么?
  • 什么是纯组件?
  • React 中 key 的重要性是什么?
  • 类组件和函数组件之间有什么区别?
  • 为什么类方法需要绑定?
  • React中的StrictMode是什么?

React Redux

Redux 是 JavaScript 状态容器,提供可预测化的状态管理。可以让你构建一致化的应用,运行于不同的环境(客户端、服务器、原生应用),并且易于测试。Redux 除了和 React一起用外,还支持其它界面库。

  • MVC框架的主要问题是什么?
  • 解释一下 Flux
  • 什么是Redux?
  • Redux遵循的三个原则是什么?
  • 你对“单一事实来源”有什么理解?
  • 列出 Redux 的组件。
  • 数据如何通过 Redux 流动?
  • 如何在 Redux 中定义 Action?
  • 解释 Reducer 的作用。
  • Store 在 Redux 中的意义是什么?
  • Redux与Flux有何不同?
  • 简述flux 思想
  • Redux 有哪些优点?
  • Redux有什么缺点
  • Redux的实现流程
  • redux中间件的理解,以及用过哪些中间件
  • 比较redux和vuex的区别

React 路由

React Router 是一个基于 React之上的强大路由库,它可以让你向应用中快速地添加视图和数据流,同时保持页面与 URL 间的同步。

  • 什么是React 路由?
  • 为什么React Router v4中使用 switch 关键字 ?
  • 为什么需要 React 中的路由?
  • 列出 React Router 的优点。
  • React Router与常规路由有何不同?
  • react-router的实现原理
  • react-router 里的<Link>标签和<a>标签有什么区别

需要前端学习资料,面试题PDF文档 可以加入这边的Q裙:【624369675】,免费领取!