【问题标题】:encode accented characters into html entities using javascript使用 javascript 将重音字符编码为 html 实体
【发布时间】:2017-09-22 16:21:37
【问题描述】:

我想使用 javascript 将此文本 éàè 转换为 éàè

我试过$('<textarea />').text("éàe").html();,但它没有对重音字符进行编码......

org.apache.commons.lang3.StringEscapeUtils.escapeHtml 在 Java 中可以正常工作,是否有 javascript 的等价物?

【问题讨论】:

  • 你知道 HOW Apache 在 Java 中是如何做到的吗?它构建了一个巨大的备忘单:grepcode.com/file/repo1.maven.org/maven2/commons-lang/…
  • 是的,我刚刚看到库 he.js 做了同样的事情,我不想使用外部库
  • 出于好奇,最终目标是什么?在 1990 年代后期,普通拉丁字符的实体几乎没有必要,而 20 年过去了。
  • 另外,您是否严格需要命名实体?数字实体是一种选择吗?
  • 感觉好像你没有明确使用 UTF-8 而是依赖默认值...

标签: javascript html html-entities html-encode


【解决方案1】:

如果您使用 ES6,您可能对标记模板文字...

感兴趣

function htmlentities(raw) {
  const str = raw[0];

  return str.replace(/é/g, 'é')
            .replace(/à/g, 'à')
            .replace(/è/g, 'è');
}

console.log(htmlentities`éàè`);

【讨论】:

  • 我想转换所有重音字符,我意识到没有本地函数可以做到这一点,我将使用he.js
猜你喜欢
  • 1970-01-01
  • 2018-10-21
  • 2015-02-25
  • 2012-06-20
  • 1970-01-01
  • 1970-01-01
  • 2010-11-24
  • 2012-03-24
  • 2021-12-24
相关资源
最近更新 更多