前言

使用ajax的开发项目过程中,经常需要将json格式的字符串返回到前端,前端解析成js对象(JSON )。

欲将以下字符串转为json对象格式:

var str = '{name:"jack"}';

1.eval方式解析

恐怕这是最早的解析方式了

var str = '{"name":"jack"}';
var json = eval('(' + str + ')');
console.log(json)

记得别忘了str两旁的小括号

2.new Function 形式,比较怪异

var str = '{"name":"jack"}';
var json = (new Function("return " + str))();
console.log(json)

3.JSON.parse() 方法

var str = '{"name":"jack"}';
var json = JSON.parse(str);
console.log(json)

使用JSON.parse需严格遵守JSON规范,如属性都需用引号引起来,如下

var str = '{name:"jack"}';
var obj = JSON.parse(str); // --> parse error

以上三种方法的输出结果如下:
在这里插入图片描述


JSON.parse()的补充

JSON 通常用于与服务端交换数据。
在接收服务器数据时一般是字符串。
我们可以使用 JSON.parse() 方法将数据转换为 JavaScript 对象。

语法

JSON.parse(text[, reviver])

参数说明:

  • text: 必需, 一个有效的 JSON 字符串。
  • reviver: 可选,一个转换结果的函数, 将为对象的每个成员调用此函数。
GitHub 加速计划 / js / json
41.72 K
6.61 K
下载
适用于现代 C++ 的 JSON。
最近提交(Master分支:1 个月前 )
960b763e 3 个月前
8c391e04 6 个月前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐