1. 程式人生 > >轉:JSON字串還原成JS原生值

轉:JSON字串還原成JS原生值

    JSON(JavaScript Object Notation) 是一種輕量級的資料交換格式,採用完全獨立於語言的文字格式,這些特性使JSON成為理想的資料交換語言。json是JavaScript的一個嚴格的子集,利用JavaScript中的一些模式來表示結構化資料。

JSON語法:

1.簡單值

    可以在JSON中表示字串、數值、布林值和null。(注:字串最好用雙引號括起來)。

2.物件

//普通物件表示

var box={

      Name:’Lee’,

      Age:100

};
//JSON物件表示

{

      “name”:”Lee”,

      ”age”:100

}

3.陣列

//普通陣列

var box=[100,’Lee’,true];
//JSON陣列

[100,”Lee”,true]

解析

定義:將JSON字串還原成JS原生值(即JS的物件或陣列)。

1.eval()

//json字串

var json=’{“title”:”a”,”num”:1}’

//解析

var obj=eval(json);

缺點:不安全。

2.parse()

var obj=JSON.parse(json);

序列化

定義:序列化就是解析的反過程,將JS的原生值轉化成json字串。

//序列化

var box=JSON.stringify(json);

優勢

1. 資料格式比較簡單, 易於讀寫;

2. 易於解析;

3. 支援多種語言。

    Json之所以流行,擁有與js類似的語法並不是全部原因。更重要的一個原因是,可以把json資料結構解析為有用的js物件。與xml資料結構要解析成dom文件而且從中提取資料極為麻煩相比,json可以解析為js物件的優勢極其明顯。