標籤:json eval parse stringfy
(1)把 JSON 文本轉換為 JavaScript 對象
由於 JSON 文法是 JavaScript 文法的子集,JavaScript 函數 eval() 可用於將 JSON 文本轉換為 JavaScript 對象。
文法:var obj = eval ("(" + jsonTxt + ")"); 其中jsonTxt是JSON文本。
執行個體如下:
var jsonTxt = ‘{"name":"leinov","sex":"famle","address":"beijing"}‘ var jsonObj = eval("("+jsonTxt+")"); alert(typeof jsonObj); //Object
JSON.parse();
作用:將JavaScript對象標記法的JSON字串轉換為對象(字串轉對象)
文法:JSON.parse(text [, reviver])
text 必選。 一個有效 JSON 字串。
reviver 可選。 一個轉換結果的函數。 將為對象的每個成員調用此函數。
傳回值:JSON對象
執行個體如下:
var jsonTxt = ‘{"name":"leinov","sex":"famle","address":"beijing"}‘ var jsonObj = JSON.parse(jsonTxt); alert(typeof jsonObj); //Object
(2)把 JSON 對象轉換為 JSON字串
JSON.stringify()
作用:將 JavaScript json對象轉換為JavaScript對象標記法的JSON字串(對象轉為字串)
文法:JSON.stringify(value [, replacer] [, space]);
value 必選。 通常為對象或數組
replacer 可選。 轉換結果的函數或數組
space 可選。 添加縮排、空白和分行符號來傳回值 JSON 文本更便於閱讀。
如果省略 space,傳回值文本產生,沒有任何額外的空白。
如果 space 是數字,則傳回值具有空白的文本縮排指定數目在每個層級的。 如果 space 大於10 時,文本縮排 10 個空白。
如果 space 為非Null 字元串,如“\t”,傳回值文本縮排與字串的字元在每個層級。
如果 space 為大於 10 個字元的字串,使用前 10 個字元。
傳回值:JSON 包含的文本字串。
var student = new Object(); student.name = "lenovointer"; student.sex = "male"; student.address = "hz"; var jsonStudent = JSON.stringify(student); alert(typeof jsonStudent); //string
本文出自 “front-end” 部落格,謝絕轉載!
JSON eval()和parse()方法以及stringfy()方法 作用