JavaScriptベース(10)JSON

2367 ワード

JSON


JS中のオブジェクトはJS自身しか認識していないが、他の言語はJSONが特殊な形式の文字列であることを認識していない.この文字列は任意の言語によって識別され、任意の言語の中のオブジェクトに変換することができる.JSONは開発中に主にデータのインタラクションに用いられる.IE 7および以下のJSON操作と互換性が必要であれば、外部のjsファイルを導入することで処理することができる

JSON


JavaScript Object Notation JSオブジェクト表現JSONとJSオブジェクトのフォーマットは同じですが、JSON文字列の属性名には二重引用符を付けなければなりません.その他のJS構文と一致するJSON分類は、次のとおりです.
1.   {}
2.   []

JSONで許可されている値:
1.   
2.  
3.   
4.null
5.  
6.  

例:
var arr = '[1,2,3,"hello",true]';
        
        var obj2 = '{"arr":[1,2,3]}';
        
        var arr2 ='[{"name":"   ","age":18,"gender":" "},{"name":"   ","age":18,"gender":" "}]';
        

JSON文字列をJSの中のオブジェクトに変換するJSの中で、私達のために1つのツール類を提供して、JSONというオブジェクトは私達が1つのJSONをJSのオブジェクトに変換することを助けることができて、1つのJSのオブジェクトをJSONに変換することができます
var json = '{"name":"   ","age":18,"gender":" "}';
        

json-->jsオブジェクト
JSON.parse()

JSON文字列をjsオブジェクトに変換できます.パラメータとしてJSON文字列が必要です.この文字列をJSオブジェクトに変換して戻ります.
        var o = JSON.parse(json);
        var o2 = JSON.parse(arr);
        
        //console.log(o.gender);
        //console.log(o2[1]);
        
        var obj3 = {name:"   " , age:28 , gender:" "};
        
        

JS対象----->JSON
JSON.stringify()

1つのJSONオブジェクトをJSON文字列に変換するには、パラメータとしてjsオブジェクトが必要であり、JSON文字列が返されます.
        
        var str = JSON.stringify(obj3);
        //console.log(str);
        

JSONというオブジェクトはIE 7以下のブラウザではサポートされていませんので、これらのブラウザで呼び出すとエラーが発生します

var str3 = '{"name":"   ","age":18,"gender":" "}';
        
JSON.parse(str3);
        

eval()という関数は、文字列形式のJSコードを実行し、実行結果をeval()を使用して実行された文字列に{}が含まれている場合、{}をコードブロックと見なしてコードブロックとして解析したくない場合は、文字列の前後に()eval()という関数を1つずつ追加する機能が強く、1つの文字列のjsコードを直接実行することができますが、開発ではできるだけ使用しないでください.まず、実行性能が悪く、セキュリティ上の危険性もあります.
        var str2 = "alert('hello');";
        
        var obj = eval("("+str+")");
        
        //console.log(obj);