JSON .parse()

JSON 通常用于与服务端交换数据。

在接收服务器数据时一般是字符串。

 JSON.parse() 方法将数据转换为 JavaScript 对象。

解析完成后,就可以在网页上使用 JSON 数据

JSON.parse(text[, reviver])
  • text:必需, 一个有效的 JSON 字符串。
  • reviver: 可选,一个转换结果的函数, 将为对象的每个成员调用此函数。

JSON 不能存储 Date 对象。

如果你需要存储 Date 对象,需要将其转换为字符串。

之后再将字符串转换为 Date 对象。

var text = '{ "name":"b", "initDate":"2013-12-14", "site":"www"}';
var obj = JSON.parse(text);
obj.initDate = new Date(obj.initDate);
启用 JSON.parse 的第二个参数 reviver,一个转换结果的函数,对象的每个成员调用此函数。

var
text = '{ "name":"Run", "initDate":"2013-12-14", "site":"com"}'; var obj = JSON.parse(text, function (key, value) { if (key == "initDate") { return new Date(value); } else { return value; }});

eval(string):函数可计算某个字符串,并执行其中的的 JavaScript 代码。

eval("var a=1");     // 声明一个变量a并赋值1。 eval("2+3"); // 执行加运算,并返回运算值。 eval("mytest()"); // 执行mytest()函数。 eval("{b:2}"); // 声明一个对象。

对于服务器返回的JSON字符串,如果 jQuery 异步请求没做类型说明,或者以字符串方式接受,那么需要做一次对象化处理,就是将该字符串放于 eval()中执行一次。这种方式也适合以普通 javascipt 方式获取 json 对象:

var u = eval('('+user+')');
alert(eval("{}"); // return undefined alert(eval("({})");// return object[Object]
 

猜你喜欢

转载自www.cnblogs.com/hpwd/p/11422557.html
今日推荐