排序
面试题:React 的事件与普通 HTML 事件有什么区别?
React 的事件系统与原生 HTML 事件系统在使用上相似,但存在几个关键区别,主要体现在事件处理机制、事件对象和事件绑定方式上。 以下是两者的主要区别: 1. 事件命名规范不同 HTML 原生事件:...
面试题:说说真实 DOM 和虚拟 DOM 的区别?它们的优缺点是什么?
这是一道非常经典的前端面试题,考察对核心渲染机制的理解。 下面从定义、区别、优缺点三个层面来拆解,并给出一个可以直接用于面试的参考答案。 一、核心定义 真实 DOM:浏览器提供的、代表HTM...
面试题:如何在 React 中阻止事件的默认行为?
在 React 中阻止事件的默认行为,需要调用事件对象(SyntheticEvent)上的 preventDefault() 方法。不能使用 return false 的方式,因为这在 React 中无效。 ✅ 正确方法:使用 event.preventDe...
面试题:在 React 中,super() 和 super(props) 有什么区别?
这是一道考察React类组件继承原理和JavaScript的class继承机制的经典面试题。很多人知道要用super(props),但说不出具体原因。 下面从JavaScript原型链、React内部实现、以及实际影响三个层面来...
面试题:React 框架的核心思想有哪些?
React 框架的核心思想是其设计哲学的基石,理解这些思想对于掌握 React 的开发模式至关重要。以下是 React 最核心的几大思想: 1. 组件化 (Componentization) 核心:将用户界面(UI)拆分为独立...
面试题:什么是无状态组件?无状态组件的应用场景有哪些?
这是一道考察React组件设计模式的经典面试题,重点在于理解函数式编程思想和组件最佳实践。 下面从定义、特点、应用场景、以及与有状态组件的对比来拆解。 一、核心定义 什么是无状态组件? 无...
面试题:为什么 React 不推荐直接修改 state?如果需要修改 state,应该如何操作?
在 React 中,直接修改 state(即 this.state)是被严格禁止的。React 不推荐这样做的原因以及正确的修改方式如下: 为什么不能直接修改 state? 绕过 React 的状态管理机制:React 的 state 不...
面试题:如何在 React 中创建一个事件?请举例说明
在 React 中,我们通常不直接创建原生 DOM 事件(如 new MouseEvent()),而是通过定义事件处理函数并将其绑定到 JSX 元素上来响应用户交互。React 使用合成事件系统(SyntheticEvent)来处理这...
