2014-04-21 62 views
2

我在嘗試序列化包含轉義字符串到JSON的字符串。我會想象JSON.stringify()將正確地重新逃脫這些字符串,並允許我JSON.parse它。在一個簡單的情況下,例如:瀏覽器JSON vs節點JSON

JSON.parse(JSON.stringify("\\")) 

節點的輸出是「\」。瀏覽器的輸出是「\」 - 看起來瀏覽器(我的例子中的Chrome)沒有正確地將雙反斜槓\\轉換爲\\\\

這是爲什麼?

回答

2

當您編寫代碼時,必須編寫"\\"(因爲反斜槓self用作轉義),這是一個只包含一個反斜槓的字符串("\\".length1)。

但是,當在控制檯或瀏覽器中顯示時,它將顯示爲"\"

+0

是的,它似乎只是控制檯正在吃它們的顯示器。我後來嘗試了JSON.stringify(「\\」).length = 4來確認它實際上與我所期望的一致。 – badunk