2016-08-02 76 views
0

我有一个像为什么反斜线()在字符串给错误控制台

"C:\projects\cisco\iwan_staging_enc\enterprise-network-controller\ui-plugins\iwan" 

当我粘贴到console并按输入一个字符串,它是给下面的错误作为

Uncaught SyntaxError: Invalid Unicode escape sequence 

什么错在这里

感谢

nageshwar

+0

的\反斜杠是转义字符。 – gcampbell

+0

意思是我没有让你 –

+0

你需要使用两个反斜杠,它被接受为反斜杠:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String#Escape_notation –

回答

0

\u是unicode转义序列的开始,在您的字符串中,您有一个\u后面跟着四个十六进制数字,这是Unicode转义序列\uxxxx的格式。见

"C:\projects\cisco\iwan_staging_enc\enterprise-network-controller\u0050i-plugins\iwan" 

\u0050 ID P

也有还有其它种类的逃逸,所以例如,如果你在那里有一个\n的地方,你会得到一个换行符

"C:\new projects\cisco\iwan_staging_enc\enterprise-network-controller\u0050i-plugins\iwan" 

所以,如果你不希望避免这些转义序列在字符串中跳过\ s前面的斜杠。

"C:\\projects\\cisco\\iwan_staging_enc\\enterprise-network-controller\\ui-plugins\\iwan" 
+0

谢谢你的回答,但如果字符串是动态的,我如何将单个反斜杠更改为双倍反斜杠 –

+0

这只与字符串文字相关,即当您在代码中输入时。如果字符串来自其他来源,则不需要转义。 – Musa

0

由于反斜杠是一个转义字符您的字符串应该被修改为:

"C:\\projects\\cisco\\iwan_staging_enc\\enterprise-network-controller\\ui-plugins\\iwan" 

请参阅:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String#Escape_notation

+0

我该如何修改它,无论我在那个字符串上做了什么,它给出了这个错误 –

+0

当我知道被喂入JavaScript时,你将需要字符串被转义。可能有替代解决方案,但我目前不知道这些。 –

相关问题