首页 > 解决方案 > 显示重音字符忽略额外的反斜杠

问题描述

我有一个带有重音字符的字符串,带有一个额外的反斜杠。

const name = "V\\u00E1ci"
console.log(name); // prints  "V\u00E1ci"

我发现很难正确显示它,尝试了字符串替换的各种组合,搜索了网络。但没有运气:(

有什么方法可以将上面的名称转换为正确显示而忽略第一个额外的反斜杠?

这就是它应该显示的方式。

Váci

标签: javascripthtml

解决方案


有什么方法可以将上面的名称转换为正确显示而忽略第一个额外的反斜杠?

您可以通过JSON Parser运行字符串,使用JSON.parse().

工作示例:

const processString = (myString) => {

  myString = JSON.parse('"' + myString + '"');
  
  return myString;
}

console.log(processString('V\\u00E1ci'));


为什么这行得通?

很简单,因为当您将 Javascript 字符串转换为 JSON 字符串时,JSON Parser会自动将任何代码点转义序列转换为相应的 Unicode 字符。


推荐阅读