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 爲非空字符串,如“\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


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章