js 解析JSON數據

鏈接原文轉自:http://www.w3cschool.cn/json/xumd1piw.html

? ? ? ? ? ? ? ? ? ? ? ? ?http://www.cnblogs.com/zoumiaomiao/p/4909539.html

1、json數據:

JavaScript Object Notation(JavaScript 對象表示法);json是存儲和交換文本信息的語法(類似于XML),是一種輕量級的文本數據交換格式,比XML更快更小更易解析。json數據的結構,json有兩種結構:對象和數組

2、json數據的寫法與原生的對象寫法的區別:

對象字面量一般寫法是:

var aa ={name:"zoumm",job :"it",age :25};

json對象寫法:

{"name":"zoumm","job":"it","age":23,"school":{"name":"大學名",“add”:"中國"}}

因此:json對象不用定義變量,末尾不用寫分號,切所有的屬性名必須加雙引號;

一般數組是這樣定義的:

var aa = [23,"zoumm"];

json數組是這樣定義的

[23,"zoumm"]

他們的區別是,json數組不用定義變量,末尾不用寫分號;

3、為什么json數據要解析:json數據在傳輸的過程中是以文本格式存在的,即以字符串的形式存在,然而我們的js中操作的卻是對象,因此我們必須將json數據解析成對象的操作,然后才能用對象對數據進行訪問。

數據格式:

Json字符串:var json_str = ‘{"name":"xiao","age":12}';//單引號

Josn對象:var obj = {"name":"xiao","age":12};

JS對象:Object {name: "xiao", age: 12}

因此:要將Json字符串——>JS對象

4、json數據的解析:

a、JSON提供了json.js包,下載http://www.json.org/json.js 后,將其引入然后就可以簡單的使用object.toJSONString()轉換成JSON數據。

b、用eval()方法轉換到Object,再obj.toJSONString()

function myEval() {

var str = '{ "name": "Violet", "occupation": "character" }';

var obj = eval('(' + str + ')');

alert(obj.toJSONString());

}

3、或者用parseJSON()方法,再obj.toJSONString()

注意:eval()是JS原生函數,使用該形式:eval(‘('+‘{name:"xiao",age:12}'+')'),并不安全,無法保證類型轉換為JS對象;不建議使用

例子:

5、JS對象——>Json字符串:

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 1.語言基礎2.嚴格模式3.js組成(ECMAScript DOM BOM)4.各種(DOM BOM)例子5.組件...
    蒲公英_前端開發者閱讀 1,559評論 0 3
  • 工廠模式類似于現實生活中的工廠可以產生大量相似的商品,去做同樣的事情,實現同樣的效果;這時候需要使用工廠模式。簡單...
    舟漁行舟閱讀 7,842評論 2 17
  • @轉自GitHub 介紹js的基本數據類型。Undefined、Null、Boolean、Number、Strin...
    YT_Zou閱讀 1,200評論 0 0
  • 于我個人來說,人生最好的休息方式乃是讀書。這樣的方式,其實很像土壤,就會任由生命的根須隨意的發達,不固執,不勉強。...
    一號書房閱讀 1,489評論 0 2
  • 昨晚10點一刻就睡下了,最近一心只想著怎么吃才不會長胖、怎么鍛煉才能更瘦,一門心思全部扎在了如何減肥上~ 本月的目...
    Eileen卟啉卟啉閱讀 237評論 0 0