HTML字符实体(character entities)
在 HTML 中,某些字符是预留的。
在 HTML 中不能应用小于号(<)和大于号(>),这是因为浏览器会误认为它们是标签。
如果心愿正确地显示预留字符,咱们必须在 HTML 源代码中应用字符实体。
如显示小于号:
< 或 <
- 应用实体名而不是数字的益处是,名称易于记忆。
- 害处是,浏览器兴许并不反对所有实体名称(对实体数字的反对却很好)。
罕用字符实体
显示后果 | 形容 | 实体名称 | 实体编号 |
---|---|---|---|
空格 | |   | |
< | 小于号 | < | < |
> | 大于号 | > | > |
& | 与号 | & | & |
" | 双引号 | " | " |
' | 单引号 | ' (IE不反对) | ' |
¢ | 分 | ¢ | ¢ |
£ | 镑 | £ | £ |
¥ | 日圆 | ¥ | ¥ |
§ | 节 | § | § |
© | 版权 | © | © |
® | 注册商标 | ® | ® |
× | 乘号 | × | × |
÷ | 除号 | ÷ | ÷ |
更具体的字符实体能够看这里https://blog.csdn.net/QXXXD/article/details/111043532
本义、反本义HTML实体字符
/** * 把html本义成HTML实体字符 * @param str * @returns {string} * @constructor */function htmlEncode(str) { var s = ""; if (str.length === 0) { return ""; } s = str.replace(/&/g, "&"); s = s.replace(/</g, "<"); s = s.replace(/>/g, ">"); s = s.replace(/ /g, " "); s = s.replace(/\'/g, "'");//IE下不反对实体名称 s = s.replace(/\"/g, """); return s;}
/** * 转义字符还原成html字符 * @param str * @returns {string} * @constructor */function htmlRestore(str) { var s = ""; if (str.length === 0) { return ""; } s = str.replace(/&/g, "&"); s = s.replace(/</g, "<"); s = s.replace(/>/g, ">"); s = s.replace(/ /g, " "); s = s.replace(/'/g, "\'"); s = s.replace(/"/g, "\""); return s;}!