如何在没有转义的情况下在JavaScript字符串中使用\?

时间:2015-05-26 14:04:17

标签: javascript

我有一个由某些代码自动生成的字符串,该代码编码经度,纬度的Google静态地图折线组。但是,它会将这些讨厌的反斜杠放在字符串中,该字符串会尝试转义后面的字符。

  

ENC:????{eggEhw nQDYOCZuDv@q@H}@v@k@^v@TQh@胡@Ĵ@ AJJ @ CZKA LNZ [RUEALDDCRC @ AJBBC的 J□\˚F AEACC GM沃顿GDGDEJC @ BDADBFB @频率@ HANGH DB @的 d \ W | @克@ QIZm @ I @ YoAO

我没有直接将编码放入HTML(它会没问题),而是使用JavaScript来实现,所以这个折线编码会被放入一个变量中,如下所示:

mapcoords:"path=color:0x00000000|fillcolor:0xFF9999|enc:{eggEhw`nQDYOCZuDv@q@H}@v@k@^v@TQh@`Aw@j@AJJ@CZKA?LNZ[RUEALDDCRC@AJBBCJ\FAEACC?GM?K@GDGDEJC@BDADBFB@F@HANGH?DB@D\W|@g@QIZm@I@YoAO"

我是如何绕过逃跑的?我已经找到了用于反斜杠的&符号,但它似乎不存在(如果它甚至会有帮助)。所以我不确定怎么回事。

2 个答案:

答案 0 :(得分:3)

你必须使用这样的反斜杠来逃避反斜杠:

var some_string = "my string with a backslash here: \\ ";

今天大多数编辑都有一个查找/替换功能,您可以使用它来替换带有两个反斜杠的单个反斜杠。如果你使用Notepad ++,你可以使用CTRL + H来访问这个功能,但正如我所说,最近的编辑器和IDE都有这个功能。

答案 1 :(得分:1)

您需要做的只是逃避转义字符,因此您只需获取\\而不是\。无论您将该字符串输出到客户端,都必须进行此替换。