Json解析と序列化について
4107 ワード
最初から話す:
まず、何がJsonですか?データ表示形式、JSON:JavaScript Object Notationオブジェクト表示法
Json文法規則:
データはキーのペアにあります.
データはコンマで区切られます.
かっこでオブジェクトを保存
大かっこ保存配列
このように:
専門用語はこのように解釈される:
JSONオブジェクト
エヴァ関数はJsonをJavascriptオブジェクトに変換できることを知っています.Js内に建てられたeavl関数はJsonデータで原生のJavaScriptオブジェクトを生成します.
これは初期のJson解析法で、erjsonオブジェクトは二つの方法があります.
この二つの方法は、jsオブジェクトをjson文字列に並べて、json文字列を解析します.
この二つの関数を詳しく説明します.
一、JSONプロローグ
Json.stringify()
作用:元の値、オブジェクト、行列の順行列化
文法:JSON.strigify(value[,replacer][,space])
パラメータ:
value:JSON文字列の元の値、オブジェクトまたは配列に変換します.
replacer:オプションパラメータ、配列または関数
space:オプションパラメータ、数値または文字列
返します.JSON形式の文字列は、valueの値を表します.同時にreplaccerのフィルタリングを通して、spaceによってフォーマットされました.
Jsonオブジェクトはjson文字列に変換されます.
1、Jsonデータフィルタリング
a.フィルタパラメータが配列である場合、JSON.strigify()の結果には配列中の属性のみが含まれます.
2.文字列のインデント
第三のパラメータは文字列の字下げを実現するもので、数字の数はいくつかのスペースに字下げすることを表します.
3番目のパラメータを追加しないと効果があります.
二、JSON解析
1.作用
JSON形式を解析する文字列
2.文法
JSON.parse(s[,reviver])
3.パラメータ
解析する文字列
reviver,オプションパラメータ,解析値を変換するためのオプション関数
4.戻り
オブジェクト、配列、元の値です.この戻り値はsから解析されます.
一例を見てください.
タイプ変更
:String->Object
JSON.parse()方法も他のパラメータを受信します.このパラメータは関数です.JSON.string()が受信したフィルタ関数を区別するために、この関数は還元関数と呼ばれています.実際には、2つの関数のキー値は同じです.彼らは2つのパラメータを受け入れて、いずれも1つの値を返す必要があります.
いくつかのはっきり書かれたブログリンクを提供します.
Json解析とプロローグ
Json解析とプロローグ
リンクを開く
まず、何がJsonですか?データ表示形式、JSON:JavaScript Object Notationオブジェクト表示法
Json文法規則:
データはキーのペアにあります.
データはコンマで区切られます.
かっこでオブジェクトを保存
大かっこ保存配列
このように:
{ "firstName":"John" , "lastName":"Doe" }
このように:{
"employees": [
{ "firstName":"John" , "lastName":"Doe" },
{ "firstName":"Anna" , "lastName":"Smith" },
{ "firstName":"Peter" , "lastName":"Jones" }
]
}
またはこのようにしますvar employees = [
{ "firstName":"Bill" , "lastName":"Gates" },
{ "firstName":"George" , "lastName":"Bush" },
{ "firstName":"Thomas" , "lastName": "Carter" }
];
相手の順序は何ですか?専門用語はこのように解釈される:
。 , 。 , 。
対象の順序化とは、オブジェクトの状態を文字列に変換することです.JSONオブジェクト
エヴァ関数はJsonをJavascriptオブジェクトに変換できることを知っています.Js内に建てられたeavl関数はJsonデータで原生のJavaScriptオブジェクトを生成します.
これは初期のJson解析法で、erjsonオブジェクトは二つの方法があります.
この二つの方法は、jsオブジェクトをjson文字列に並べて、json文字列を解析します.
この二つの関数を詳しく説明します.
一、JSONプロローグ
Json.stringify()
作用:元の値、オブジェクト、行列の順行列化
文法:JSON.strigify(value[,replacer][,space])
パラメータ:
value:JSON文字列の元の値、オブジェクトまたは配列に変換します.
replacer:オプションパラメータ、配列または関数
space:オプションパラメータ、数値または文字列
返します.JSON形式の文字列は、valueの値を表します.同時にreplaccerのフィルタリングを通して、spaceによってフォーマットされました.
var myMes= {
"name": "ys",
"age": 12
};
console.log(typeof myMes);//Object
var jsonText = JSON.stringify(myMes);
console.log(typeof jsonText);//String
成功将Jsonオブジェクトはjson文字列に変換されます.
1、Jsonデータフィルタリング
a.フィルタパラメータが配列である場合、JSON.strigify()の結果には配列中の属性のみが含まれます.
var myMes = {
"name": "ys",
"age": 12,
"like": "drink",
"nationality": "China"
};
/* , name age*/
var jsonText = JSON.stringify(myMes, ["name", "age"]);
console.log(jsonText); //{"name": "ys", "age": 12}
b.2番目のパラメータが関数である場合、着信関数は2つのパラメータを受信し、必要に応じて処理します. var myMes= {
"name": "ys",
"age": 12,
"like": "drink",
"nationality": "China"
};
var jsonText = JSON.stringify(myMes, function(key, value){
switch(key){
case "name":
return " ";
default:
return value;
}
}, 4);
console.log(jsonText);
結果は図の通りです2.文字列のインデント
第三のパラメータは文字列の字下げを実現するもので、数字の数はいくつかのスペースに字下げすることを表します.
var myMes= {
"name": "ys",
"age": 12,
"like": "drink",
"nationality": "China"
};
var jsonText = JSON.stringify(myMes, ["name", "age"], 4);
console.log(jsonText);//{"name": "ys", "age": 12}
の結果は、図の通りである.3番目のパラメータを追加しないと効果があります.
二、JSON解析
1.作用
JSON形式を解析する文字列
2.文法
JSON.parse(s[,reviver])
3.パラメータ
解析する文字列
reviver,オプションパラメータ,解析値を変換するためのオプション関数
4.戻り
オブジェクト、配列、元の値です.この戻り値はsから解析されます.
一例を見てください.
var myMes= {
"name": "ys",
"age": 12
};
console.log(typeof myMes);//Object
// json
var jsonText = JSON.stringify(myMes);
console.log(typeof jsonText);//String
var jsonObj = JSON.parse(jsonText);
console.log(typeof jsonObj);//Object
Json文字列をJsonオブジェクトに変換する役割です. タイプ変更
:String->Object
JSON.parse()方法も他のパラメータを受信します.このパラメータは関数です.JSON.string()が受信したフィルタ関数を区別するために、この関数は還元関数と呼ばれています.実際には、2つの関数のキー値は同じです.彼らは2つのパラメータを受け入れて、いずれも1つの値を返す必要があります.
いくつかのはっきり書かれたブログリンクを提供します.
Json解析とプロローグ
Json解析とプロローグ
リンクを開く