天天看点

前端页面Json对象与Json字符串的相互转换

一:Json对象转换为json字符串

第一种:使用最原始的for循环自己拼装组合,这个我就不写例子了

第二种:使用浏览器自带的JSON对象,缺点是兼容性不好,对于ie8以下的版本不支持。

1

2

3

var

userinfo = { name: 

"张三"

, age: 1, classname: 

"一年级"

,friends:[

"N1"

,

"N2"

,

"N3"

] };

//Json 对象转换为json字符串

var

s = JSON.stringify(userinfo);

第三种:引用json2.js ,使用JSON对象转换,兼容所有浏览器

1

2

3

var

userinfo = { name: 

"张三"

, age: 1, classname: 

"一年级"

,friends:[

"N1"

,

"N2"

,

"N3"

] };

//Json 对象转换为json字符串

var

s = JSON.stringify(userinfo);

二:json字符串转换为Json对象 (用到这样的场景比较多)

第一种:使用Ajax 的转换对象

1

2

var

workJsonString = 

"{\"name\":\"张三\",\"age\":1,\"classname\":\"一年级\"}"

;

var

work1 = $.parseJSON(workJsonString);

//使用Ajax

第二种:使用浏览器自带的JSON对象,缺点是兼容性不好,对于ie8以下的版本不支持。

1

2

var

workJsonString = 

"{\"name\":\"张三\",\"age\":1,\"classname\":\"一年级\"}"

;

var

work2 = JSON.parse(workJsonString);

//浏览器自带的对象  兼容问题

第三种:引用json2.js ,使用JSON对象转换,兼容所有浏览器

1

2

var

workJsonString = 

"{\"name\":\"张三\",\"age\":1,\"classname\":\"一年级\"}"

;

var

work3 = JSON.parse(workJsonString);

第四种:使用eval()对象 注意:json字符串的两端需要加上一个括号

1

2

var

workJsonString = 

"{\"name\":\"张三\",\"age\":1,\"classname\":\"一年级\"}"

;

var

work4=eval(

"("

+ workJsonString + 

")"

);