JsonオブジェクトとJson文字列が入れ替わる(4つの変換方式)
1931 ワード
1.jQueryプラグインがサポートする変換方式:
3.Javascriptサポートの変換方式:
湖南省にある地名http://www.json.org/json.jsを提供しています.このようにie 8(互換モード)で、ie 7とie 6はJSONオブジェクトとそのstrigify()とパーパーレー()方法をサポートできます.はい、ありますhttps://github.com/douglascrockford/JSON-js上でこのjsを獲得して、普通は今json 2.jsを使います.
注:JSON.parse()とeval()の違い
JSON.parse()はjson形式のデータを解析でき、解析する文字列をフォーマットチェックします.フォーマットが正しくないと解析しません.eval()はどの文字列も解析できます.evalは安全ではありません.
たとえば次の文字列:
注意:いくつかの低レベルのブラウザはまだJSON.parseをサポートしていません.https://github.com/douglascrockford/JSON-js/blob/master/json2.js ダウンロードします.
$.parseJSON( jsonstr ); //jQuery.parseJSON(jsonstr), json json
2.ブラウザがサポートする変換方式(Firefox、chrome、opera、safari、ie 9、ie 8)などのブラウザ:JSON.parse(jsonstr); // json json
JSON.stringify(jsonobj); // json json
注:ie 8(互換モード)、ie 7とie 6はJSONの対象がないので、JSON公式の方式を採用して、json.jsを導入することを推奨します.3.Javascriptサポートの変換方式:
eval('(' + jsonstr + ')'); // json json , json
:ie8( ),ie7 ie6 eval() JSON , , eval json 。
4.JSON公式の変換方式:湖南省にある地名http://www.json.org/json.jsを提供しています.このようにie 8(互換モード)で、ie 7とie 6はJSONオブジェクトとそのstrigify()とパーパーレー()方法をサポートできます.はい、ありますhttps://github.com/douglascrockford/JSON-js上でこのjsを獲得して、普通は今json 2.jsを使います.
注:JSON.parse()とeval()の違い
JSON.parse()はjson形式のデータを解析でき、解析する文字列をフォーマットチェックします.フォーマットが正しくないと解析しません.eval()はどの文字列も解析できます.evalは安全ではありません.
たとえば次の文字列:
var str = 'alert(1000.toString())';
eval(str);
JSON.parse(str);
はevalで解析でき、ダイアログが表示されますが、JSON.parseでは解析できません.実はalertは悪いところがありません.怖いのは、悪意のあるユーザーがjson文字列にトロイの木馬をページに挿入するシナリオを注入したら、evalでも操作できます.JSON.parse()を使うなら、この問題を心配する必要はありません.注意:いくつかの低レベルのブラウザはまだJSON.parseをサポートしていません.https://github.com/douglascrockford/JSON-js/blob/master/json2.js ダウンロードします.