好的,这是一个非常核心的 React 面试题和知识点。我们来详细解析一下合成事件(SyntheticEvent)与原生 DOM 事件的区别。 核心摘要 原生 DOM 事件:浏览器本身提供的、直接绑定在真实 DOM 节点上的事件监听器(如 )。其行为完全由浏览器规范定义。 合成事件:React 为了跨浏览器兼容性和性能而封装的一层抽象事件系统。它并不是浏览器的原生事件,而是对原生事件的包装器。所有 React 的事件处理(如 , )都使用合成事件。 --- 主要区别对比表 | 特性 | 原生 DOM 事件 | React 合成事件 | | :--- | :--- | :--- | | 命名方式 | 小写(如 , ) | 驼峰式(如 , ) | | 绑定方式 | - HTML内联:<br>- JS属性:<br>- JS方法: | JSX中声明:<br>(React内部统一管理) | | 阻止默认行为 | <br>或返回 (仅通过属性绑定时) | 必须显式调用 <br>(返回 false 无效) | | 传播机制 | 捕获 -> 目标 -> 冒泡,符合 W3C标准,各浏览器一致。 | ...