方法

时间:2025-03-17 10:27:40

一、JSON的解析方法有两种:eval()和()

var jsonstr='{"str1":"Hello,", "str2":"world!"}';
var evalJson=eval('('+jsonstr+')');
var jsonParseJson=(jsonstr);

 这样就把jsonstr这个json格式的字符串转换成了JSON对象。

二者的区别在于:()可以解析json格式的数据,并且会对要解析的字符串进行格式检查,如果格式不正确则不进行解析,而eval()可以解析任何字符串,eval()会执行字符串的代码,造成原先字符串的值改变,是不安全的。

二、(text [, reviver])语法

1、参数

text:必选。一个有效的 JSON 字符串。

reviver:可选。一个转换结果的函数,将为对象的每个成员调用此函数。

2、功能

(jsonstr)将格式完好的json字符串转换为json对象。所谓"格式完好",就是要求jsonstr必须符合严格的JSON格式,例如:属性名称必须用双引号,字符串值也必须用双引号括起来,单引号写在{}外。

3、实例

var jsonstr='{"str1":"abc", "str2":"123"}';
var jsonobj=(jsonstr);
(jsonobj);
运行结果如下:
Object
str1: "abc"
str2: "123"
__proto__: Object

参考:/camille666/p/object_transfer_string.html