javascript如何写不用转义的字符串代码
js中的String.raw 函数
语法 String.raw`templateStr`; String.raw(obj, ...substitutions);
支持能力有限, 如可以支持
String.raw`c:\aaa\bbb` //result: c:\aaa\bbb
但是
String.raw`c:\aaa\bbb\` //result: 是执行不了的,因为没有` 闭合
所以它如果要 c:\aaa\bbb\ 这个结果,则需要 String.raw`c:\aaa\bbb\ ` .trim()
比如 console.log(String.raw`c:\ `.length) //result: 4
console.log(String.raw`c:\ `.trim().length) //result: 3
像 csharp 处理这个是这样的
string path1=@"c:\abc"; //result: c:\abc
string path1=@"c:\abc\"; //result: c:\abc\
string path1=@"c:\abc\""dd"; //result: c:\abc\"dd
浏览器限制:
Microsoft Edge(Edge 浏览器)中受支持。应用商店应用(Windows 10 上的 Microsoft Edge)中也受支持。请参阅版本信息。
在以下文档模式中不受支持:Quirks、Internet Explorer 6 标准模式、Internet Explorer 7 标准模式、Internet Explorer 8 标准模式、Internet Explorer 9 标准模式、Internet Explorer 10 标准模式和 Internet Explorer 11 标准模式。在 Windows 8.1 中不受支持。