javascriptオブジェクトを文字列に直接変換したい。私は次のコードを使用しました。JavascriptオブジェクトをJSON文字列に変換する
var foo = {};
foo.test1 = test1;
foo.test2 = test2;
foo.test3 = test3;
var jsonObj = JSON.stringify(foo);
正常に動作しますが、json2のjavascriptライブラリが使用されます。しかし、私はこのライブラリを使用せずに単純なjavascriptでこれを行う必要があります。渡されたパラメータを使用してjsonフィードを作成することは、このように動作します。
var jsonObj = "{\"test1\":\"" + test1+ "\",\"test2\":\"" + test2+ "\",\"test3\":\"" + test3+ "\"}";
しかし渡されたパラメータ(TEST1、TEST2およびTEST3)は、それが問題を持っています二重引用符が含まれている場合。
これを達成するための最良の方法は何ですか?
はあなたがそれぞれのキーとメンバーにString.replace(/"/g, "\\\"")
を行うことで、二重引用符をエスケープする必要があり、あなたに
ライブラリを使用できないのはなぜですか?特に、json2.jsのように小さくて特殊なものが1つです。 – Quentin
実際には、他のコードと一緒にjson2.jsのミニバージョンを張っておくこともできます。別のファイルに保存する必要はありません。 –
非常に古いブラウザ(または静止画2001のように構築されたブラウザ)のサポートを計画していない場合は、json2.jsを含める必要はありません。 – techfoobar