DOM 中 closest 方法的作用是什么?举个例子
closest() 是 DOM 元素方法,从自身开始沿父链向上查找第一个匹配 CSS 选择器的元素。
- 查找方向:自身 → 父 → 祖父 →
<html>,找到 即返回,否则返回null - 包含自身:当前元素就匹配时直接返回它,不是从父级才开始
- 接受任意选择器:标签、类、属性、伪类、复合选择器都支持
- 核心场景:事件委托、点击外部关闭、从子节点反查所属组件根
- 替代写法:等价于手写
while (el && !el.matches(sel)) el = el.parentElement
最佳实践:原生事件委托里只要涉及"从点击目标反查父级",优先用 closest(),别再手写 parentElement 循环。IE 不支持,老项目需 polyfill。

