JavaScript中的字符串转义

JavaScript中的字符串转义,javascript,string,escaping,Javascript,String,Escaping,我有一根这样的绳子 var str = 'C:\fake\p\ath\some.jpg'; 我使用str.replace尝试了许多变体,如下所示: var str = "C:\fake\p\ath\some.jpg"; str = str.replace(/\\/g, "\\"); alert(str); 但是它不能正常工作,正确的解决方案是什么?您必须将字符串中的反斜杠加倍: var str = 'C:\\fake\\p\\ath\\some.jpg'; 你已经说了很多关于你是如何尝试

我有一根这样的绳子

var str = 'C:\fake\p\ath\some.jpg';
我使用
str.replace
尝试了许多变体,如下所示:

var str = "C:\fake\p\ath\some.jpg";
str = str.replace(/\\/g, "\\");
alert(str);


但是它不能正常工作,正确的解决方案是什么?

您必须将字符串中的反斜杠加倍:

var str = 'C:\\fake\\p\\ath\\some.jpg';

你已经说了很多关于你是如何尝试去做你想要实现的事情的,但实际上你并没有说那是什么!所以我有string
str='C:\fake\p\ath\some.jpg'
——我需要从这个字符串中获得转义字符串:
C:\\fake\\p\\ath\\some.jpg
。问题是你原来的字符串不是你想象的那样。JavaScript将
\f
等内容解释为转义码。请参阅Pointy的答案。非常令人惊讶的是,您甚至可以问这个常见问题,在创建字符串后,您无法避免单个反斜杠。