javascript - JS中字符串转换unicode?

标签 javascript vue.js

<i class="icon">&#xe672;</i>

结果是一个像这样的图标:>

但是当我在 vue 中渲染时:

<i class="icon">{{a}}</i>

a = '&#xe672;'

结果是我得到了一个字符串!

最佳答案

a 包含 unicode 字符的 HTML 转义,但这不是 JavaScript 中的有效转义序列,因此它只是一个文字字符串。快速解决方法是将 a 绑定(bind)到元素的 v-html,其中 HTML 转义序列有效。

或者,您可以修改 a 以使用适当的 JavaScript 转义序列。相当于 JavaScript 中的 unicode 字符 Unicode code point escape是:

a = '\u{e672}'

new Vue({
  el: '#app',
  data: () => ({
    a: '\u{e672}',
    b: '\u{01F638}',
  }),
})
<script src="https://unpkg.com/vue@2.5.17"></script>

<div id="app">
  <div>{{a}} &#xe672;</div>
  <div>{{b}} &#x1F638;</div>
</div>

另一种选择是使用第三方库(例如 ent )来解码 HTML 转义字符串:

 const ent = require('ent');
 a = ent.decode('&#xe672;');

关于javascript - JS中字符串转换unicode?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52269624/

相关文章:

javascript - 使用变量中预设的密码登录系统

javascript - 用于检查重复空格字符的正则表达式

javascript - Uncaught ReferenceError : require is not defined in svelte/sapper

vue.js - nuxt js,如何在服务器端渲染时获取网页的主机名

vue.js - 将 $refs 与 Element UI 输入组件一起使用

vue.js - 如何在应用程序外部安装路由器链接?

javascript - 未触发提交类型输入的提交事件

javascript - 从 Angular Ui-Router 中的参数定义 'parent' 值

javascript - 如何比较 Vuejs 中的日期?

javascript - Vee-Validate 仅验证一个字段