概要
現在、Web 開発では JSON 形式がますます注目を集めており、特に ajax を使用してプロジェクトを開発するプロセスでは、json 形式の文字列をフロントエンドに返す必要があり、フロントエンドはそれを JS に解析します。オブジェクト (JSON)。
幸いなことに、JSON の概念は ECMA-262 (E3) では標準に組み込まれませんでしたが、グローバル JSON オブジェクトと Date の toJSON メソッドを含めて、JSON の概念が ECMA-262 (E5) で正式に導入されました。
JSON データを解析する 3 つの方法
eval() メソッド
JSON データを解析する最も一般的な方法は、JavaScript の eval() メソッドを使用することです。コードは次のとおりです:
関数 toJson(str){
var json = eval('(' str ')');
json を返す;
}
この方法にはパフォーマンスとセキュリティの問題があるため、お勧めできません。
新しい Function メソッド
関数 toJson(str){
var json = (new Function("return " str))();
json を返す;
}
JSON.parse() メソッド
このメソッドは、IE8/Firefox3.5/Chrome4/Safari4/Opera10 以降のみをサポートします。これらのブラウザは W3C 標準に近く、デフォルトで toJSON メソッドを実装します。
関数 toJson(str){
return JSON.parse(str);
}
json2.js は、ブラウザーが JSON.parse をネイティブにサポートしており、ES5 と API 互換性がある場合、ネイティブ バージョンを使用します。 ES5 がまだ十分に普及していない現状において、現在 ES5 と互換性のある API を使用し、将来 ES5 にスムーズに移行できるように、インポートを削除して切り替えるだけで済むように、John Resig 氏は主に json2.js を使用することを推奨しています。