# JavaScript 如何转义 HTML

URL: https://caijiao.org/how-to/javascript/escape-html
Source: docs/how-to/javascript/escape-html.md
Description: JavaScript 如何转义 HTML：把 &, , 引号转换为实体，避免用户输入直接进 innerHTML。 示例可直接复制到浏览器或项目代码中，并附相关教程、工具入口。

## 快速答案

把 &, <, >, 引号转换为实体，避免用户输入直接进 innerHTML。

```js
const escapeHtml = (s) => s.replace(/[&<>"']/g, ch => ({ '&': '&amp;', '<': '&lt;', '>': '&gt;', '"': '&quot;', "'": '&#39;' }[ch]));
```

## 使用要点

- 把用户输入用于选择器、正则或 HTML 前要先转义。
- DOM 示例默认在浏览器中执行，放进框架组件时要等元素渲染完成。

## 相关内容

- [JavaScript / TypeScript 问题](/how-to/javascript/)
- [JavaScript 教程](/javascript/)
- [TypeScript 教程](/ts/)
- [JSON Formatter](/tool/json-formatter)
- [JSON Validator](/tool/json-validator)
