2016-08-02 105 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時,你將需要字符串被轉義。可能有替代解決方案,但我目前不知道這些。 –

相關問題