我有一个像为什么反斜线()在字符串给错误控制台
"C:\projects\cisco\iwan_staging_enc\enterprise-network-controller\ui-plugins\iwan"
当我粘贴到console
并按输入一个字符串,它是给下面的错误作为
Uncaught SyntaxError: Invalid Unicode escape sequence
什么错在这里
感谢
nageshwar
我有一个像为什么反斜线()在字符串给错误控制台
"C:\projects\cisco\iwan_staging_enc\enterprise-network-controller\ui-plugins\iwan"
当我粘贴到console
并按输入一个字符串,它是给下面的错误作为
Uncaught SyntaxError: Invalid Unicode escape sequence
什么错在这里
感谢
nageshwar
\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"
谢谢你的回答,但如果字符串是动态的,我如何将单个反斜杠更改为双倍反斜杠 –
这只与字符串文字相关,即当您在代码中输入时。如果字符串来自其他来源,则不需要转义。 – Musa
由于反斜杠是一个转义字符您的字符串应该被修改为:
"C:\\projects\\cisco\\iwan_staging_enc\\enterprise-network-controller\\ui-plugins\\iwan"
我该如何修改它,无论我在那个字符串上做了什么,它给出了这个错误 –
当我知道被喂入JavaScript时,你将需要字符串被转义。可能有替代解决方案,但我目前不知道这些。 –
的\反斜杠是转义字符。 – gcampbell
意思是我没有让你 –
你需要使用两个反斜杠,它被接受为反斜杠:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String#Escape_notation –