次の変換は、制御文字が正しくないと言って失敗します
var myObj = JSON.parse('{"imagePath": "http://somedomain.com/test.jpg?path=\728\1.jpg"}');
console.log(myObj);
これは、画像パスに次の文字「\」が含まれているためです。もしそうなら、これに対する解決策はありますか?
その文字を削除すると機能します。
ありがとう。
\
エスケープ文字です。したがって\
、画像のパス文字列で使用する場合は、ダブルエスケープする必要があります。すなわち使用\\
\
JSONを生成する場所では、文字をエスケープする必要があります。
リテラルの場合は、エスケープもエスケープする必要があります。
j = JSON.parse('{"imagePath": "http://somedomain.com/test.jpg?path=\\\\728\\\\1.jpg"}');