Javascript 假';0';嵌入字符串中带前缀的八进制文字

Javascript 假';0';嵌入字符串中带前缀的八进制文字,javascript,ecmascript-6,Javascript,Ecmascript 6,以下代码包含字符串中的字符串。由于es6类的主体处于严格模式,它无法编译,因为内部字符串看起来像包含八进制值 class Test { static get template () { return ` .class { content: "\2713\0020" } `} } 解决方法包括转义字符串或使用非unicode形式的字符 我的工作流程包括在小提琴中创建HTML和CSS,然后将代码复制粘贴到封装的es6类中(我仅限于使用单个文件) 我能做些什么来避

以下代码包含字符串中的字符串。由于es6类的主体处于严格模式,它无法编译,因为内部字符串看起来像包含八进制值

class Test {
  static get template () { return `
    .class {
      content: "\2713\0020"
    }
  `}
}
解决方法包括转义字符串或使用非unicode形式的字符

我的工作流程包括在小提琴中创建HTML和CSS,然后将代码复制粘贴到封装的es6类中(我仅限于使用单个文件)


我能做些什么来避免这个错误吗?我希望包装字符串,但它仍然在类主体中。

您可以将
string.raw
与模板文本一起使用,以便反斜杠被解释为文本反斜杠,而不是转义字符:

类测试{
静态获取模板(){return String.raw`
.班级:以前{
内容:“\2713\0020”
}
`}
}
document.body.appendChild(document.createElement('style')).textContent=Test.template

text
您可以将
String.raw
与模板文字一起使用,以便反斜杠被解释为文字反斜杠,而不是转义字符:

类测试{
静态获取模板(){return String.raw`
.班级:以前{
内容:“\2713\0020”
}
`}
}
document.body.appendChild(document.createElement('style')).textContent=Test.template

text
您可以将
u
放在
\
之后:

“严格使用”;
课堂测试{
静态获取模板(){return`
.类{
内容:“\u2713\u0020”
}
`}
}

console.log(Test.template)
您可以将
u
放在
\
之后:

“严格使用”;
课堂测试{
静态获取模板(){return`
.类{
内容:“\u2713\u0020”
}
`}
}

console.log(Test.template)
正是我想要的。谢谢你,这正是我想要的。谢谢