- React 基础问题
- 35道必须要清楚的 React 面试题">35道必须要清楚的 React 面试题
- 问题1:什么是虚拟DOM?
- 问题2:类组件和函数组件之间的区别是啥?
- 问题 3:React 中 refs 干嘛用的?
- 问题 4:在 React 中如何处理事件
- 问题 5:state 和 props 区别是啥?
- 问题 6:如何创建 refs
- 问题 7:什么是高阶组件?
- 问题 8:在构造函数调用 super 并将 props 作为参数传入的作用是啥?
- 问题 9:什么是控制组件?
- 问题 10:如何
- 问题 11:讲讲什么是 JSX ?
- 问题 12:根据下面定义的代码,可以找出存在的两个问题吗 ?
- 问题 13:为什么不直接更新 state 呢 ?
- 问题 14:React 组件生命周期有哪些不同阶段?
- 问题 15:React 的生命周期方法有哪些?
- 问题 16:这三个点(…)在 React 干嘛用的?
- 问题 17:使用 React
- 问题 18:什么是 ReactHooks?
- 问题 19:React 中的 useState() 是什么?
- 问题 20:React 中的StrictMode(严格模式)是什么??
- 问题 21:为什么类方法需要绑定到类实例?
- 问题 22:什么是 prop
- 问题 23:描述 Flux 与 MVC?
- 问题 24:受控组件和非受控组件区别是啥?
- 问题 25:这段代码有什么问题吗?
- 问题 26:什么是 React
- 问题 27:什么是 React
- 问题 28:如何在
- 问题 29:在 React 中使用构造函数和 getInitialState 有什么区别?
- 问题 30:如何有条件地向
- 问题 31:Hooks会取代 render props 和高阶组件吗?
- 问题 32:如何避免组件的重新渲染?
- 问题 33:什么是纯函数?
- 问题 34:当调用setState时,React render 是如何工作的?
- 问题 35:如何避免在React重新绑定实例?
React 基础问题
1.React 中 keys 的作用是什么?
2.调用 setState 之后发生了什么?
3.react 生命周期函数-**
- 初始化阶段:
- 运行中状态:
- 销毁阶段:
4.shouldComponentUpdate 是做什么的,(react 性能优化是哪个周期函数?)
5.为什么虚拟 dom 会提高性能?(必考)
6.react diff 原理(常考,大厂必考)
7.React 中 refs 的作用是什么?
8.如果你创建了类似于下面的 Twitter 元素,那么它相关的类定义是啥样子的?
9.展示组件(Presentational component)和容器组件(Container component)之间有何不同
10.容器组件则更关心组件是如何运作的。
11.类组件(Class component)和函数式组件(Functional component)之间有何不同
12. (组件的)状态(state)和属性(props)之间有何不同
13.何为受控组件(controlled component)
14.何为高阶组件(higher order component)
15.为什么建议传递给 setState 的参数是一个 callback 而不是一个对象
16.除了在构造函数中绑定 this,还有其它方式吗
17.应该在 React 组件的何处发起 Ajax 请求
18.描述事件在 React 中的处理方式。
19.createElement 和 cloneElement 有什么区别?
20.React 中有三种构建组件的方式
21.React.createClass()、ES6 class 和无状态函数。
22.react 组件的划分业务组件技术组件?
23.简述 flux 思想
24.Flux 的最大特点,就是数据的”单向流动”。
25.React 项目用过什么脚手架(本题是开放性题目)
26.了解 redux 么,说一下
redux 的作用和运用流程,redux 有什么缺点
35道必须要清楚的 React 面试题
问题1:什么是虚拟DOM?
虚拟 DOM (VDOM)是真实 DOM 在内存中的表示。UI 的表示形式保存在内存中,并与实际的 DOM 同步。这是一个发生在渲染函数被调用和元素在屏幕上显示之间的步骤,整个过程被称为调和**。
问题2:类组件和函数组件之间的区别是啥?
· 类组件可以使用其他特性,如状态 state 和生命周期钩子。
· 当组件只是接收 props 渲染到页面时,就是无状态组件,就属于函数组件,也被称为哑组件或展示组件。
函数组件和类组件当然是有区别的,而且函数组件的性能比类组件的性能要高,因为类组件使用的时候要实例化,而函数组件直接执行函数取返回结果即可。为了提高性能,尽量使用函数组件。
区别 | 函数组件 | 类组件 |
---|---|---|
是否有 this | 没有 | 有 |
是否有生命周期 | 没有 | 有 |
是否有状态 state | 没有 | 有 |
问题 3:React 中 refs 干嘛用的?
Refs 提供了一种访问在render方法中创建的 DOM 节点或者 React 元素的方法。在典型的数据流中,props 是父子组件交互的唯一方式,想要修改子组件,需要使用新的pros重新渲染它。凡事有例外,某些情况下咱们需要在典型数据流外,强制修改子代,这个时候可以使用 Refs。
咱们可以在组件添加一个 ref 属性来使用,该属性的值是一个回调函数,接收作为其第一个参数的底层 DOM 元素或组件的挂载实例。
class UnControlledForm extends Component {
handleSubmit = () => {
console.log(“Input Value: “, this.input.value)
}
render () {
return (