返回首页 CoffeeScript 实用手册

语法

类和对象

字符串

数组

日期和时间

数学

方法

元编程

jQuery

Ajax

正则表达式

网络

设计模式

数据库

测试

使用 HTML 命名实体替换 HTML 标签

问题

你需要使用命名实体来替代 HTML 标签:

<br/> => &lt;br/&gt;

解决方案

htmlEncode = (str) ->
  str.replace /[&<>"']/g, ($0) ->
    "&" + {"&":"amp", "<":"lt", ">":"gt", '"':"quot", "'":"#39"}[$0] + ";"

htmlEncode('<a href="http://bn.com">Barnes & Noble</a>')
# => '&lt;a href=&quot;http://bn.com&quot;&gt;Barnes &amp; Noble&lt;/a&gt;'

讨论

可能有更好的途径去执行上述方法。

上一篇: 使用 Heregexes 下一篇: 替换子字符串