什么是 HTML 的实体编码 (HTML Entity Encode)
Issue 欢迎在 Gtihub Issue 中回答此问题: Issue 480
Author 回答者: kglive
- 不可分的空格: 
- <(小于符号):&lt;
- (大于符号):&gt;
- &(与符号):&amp;
- ″(双引号):&quot;
- ‘(单引号):‘&apos;
- ……
Author 回答者: shfshanyue
HTML 实体是一段以连字号(&)开头、以分号(;)结尾的字符串。用以显示不可见字符及保留字符 (如 HTML 标签)
在前端,一般为了避免 XSS 攻击,会将 <>
编码为 <
与 >
,这些就是 HTML 实体编码。
在 whatwg 中可查看实体编码数据。
在 HTML 转义时,仅仅只需要对六个字符进行编码: &
, <
, >
, "
, '
, ```。可使用 he 这个库进行编码及转义
// 实体编码
> he.encode('<img src=""></img>')
< "<img src=""></img>"
// 转义
> he.escape('<img src=""></img>')
< "<img src=""></img>"