31

JSON.stringifyは私のjsonオブジェクトを次の文字列に変換しています

{\" 2003 \":{\ "1 \":{\ "2 \":[\ "test \"]、\ "3 \":[\ "test2 \"]}}}

逃げてはいけない時。結果は、以下に引用されている文字列のようになります。

{"2003":{"1":{"2":["test"]、 "3":["test2"]}}}

エスケープされたすべての引用符の一般的な置換を使用して、入力に含まれる可能性のある引用符を削除するのではなく。変数をダブルエスケープしないようにJSON.stringifyを設定するにはどうすればよいですか?

4

2 に答える 2

48

オブジェクトではなく文字列を文字列化しています:

var str = '{"2003":{"1":{"2":["test"],"3":["test2"]}}}';
var obj = {"2003":{"1":{"2":["test"],"3":["test2"]}}};

console.log( JSON.stringify(str) );  // {\"2003\":{\"1\":{\"2\":[\"test\"],\"3\":[\"test2\"]}}} 
console.log( JSON.stringify(obj) );  // {"2003":{"1":{"2":["test"],"3":["test2"]}}} 
于 2012-06-10T07:52:45.957 に答える