js中将字符串转换成json的三种方式

 更新时间:2011年01月12日 17:22:33   作者:  
使用ajax的开发项目过程中,经常需要将json格式的字符串返回到前端,前端解析成js对象(JSON )。

ECMA-262(E3) 中没有将JSON概念写到标准中,还好在 ECMA-262(E5) 中JSON的概念被正式引入了,包括全局的JSON对象和Date的toJSON方法。

1,eval方式解析,恐怕这是最早的解析方式了。如下:

复制代码 代码如下:

function strToJson(str){
var json = eval('(' + str + ')');
return json;
}

记得别忘了str两旁的小括号。
2,new Function形式,比较怪异哦。如下
复制代码 代码如下:

function strToJson(str){
var json = (new Function("return " + str))();
return json;
}

3,使用全局的JSON对象,如下:
复制代码 代码如下:

function strToJson(str){
return JSON.parse(str);
}

目前 IE8(S)/Firefox3.5+/Chrome4/Safari4/Opera10 已实现了该方法,以下是部分资料:http://blogs.msdn.com/ie/archive/2008/09/10/native-json-in-ie8.aspx https://developer.mozilla.org/en/Using_JSON_in_Firefox
使用JSON.parse需严格遵守JSON规范,如属性都需用引号引起来,如下
复制代码 代码如下:

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

name没有用引号引起来,使用JSON.parse所有浏览器中均抛异常,解析失败。而前两种方式则没问题。
另见:Chrome中JSON.parse的特殊实现

相关文章

  • js+json用表格实现简单网站左侧导航

    js+json用表格实现简单网站左侧导航

    闲暇之余,制作一用表格实现的简单的网站导航条,分享给大家。这里的数据基于json格式,学习json的朋友可以参考下。
    2010-04-04
  • JSON 学习之JSON in JavaScript详细使用说明

    JSON 学习之JSON in JavaScript详细使用说明

    只需要在前台页面中引入相应的javascript即可测试
    2010-02-02
  • 如何实现json数据可视化详解

    如何实现json数据可视化详解

    最近在工作中开发一个内部功能时碰到的一个需求,要把json数据在页面上展示出来,平时浏览器会安装jsonView这样的扩展来看json数据,但是程序要用到的话该怎么办呢?今天在网上搜索的时候,发现了这个小技巧,分享给大家,有需要的朋友们可以参考借鉴,下面来一起看看吧
    2016-11-11
  • js操作两个json数组合并、去重,以及删除某一项元素

    js操作两个json数组合并、去重,以及删除某一项元素

    这篇文章主要介绍了js操作两个json数组合并、去重,以及删除某一项元素,需要的朋友可以参考下
    2020-09-09
  • 解读JSON的三种格式

    解读JSON的三种格式

    这篇文章主要介绍了解读JSON的三种格式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-01-01
  • 详解Java中String JSONObject JSONArray List<实体类>转换

    详解Java中String JSONObject JSONArray List<实体类>转换

    这篇文章主要介绍了详解String JSONObject JSONArray List<实体类>转换,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-11-11
  • JS中JSON.parse(JSON.stringify())实现深拷贝

    JS中JSON.parse(JSON.stringify())实现深拷贝

    深拷贝就是完全拷贝一份新的对象,本文主要介绍了JS中JSON.parse(JSON.stringify())实现深拷贝,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-08-08
  • js中将字符串转换成json的三种方式

    js中将字符串转换成json的三种方式

    使用ajax的开发项目过程中,经常需要将json格式的字符串返回到前端,前端解析成js对象(JSON )。
    2011-01-01
  • jQuery 遍历json数组的实现代码

    jQuery 遍历json数组的实现代码

    看到网上有很多朋友问遍历json数组的代码,脚本之家特为大家整理了一些,需要的朋友可以看下。
    2010-03-03
  • json实现前后台的相互传值详解

    json实现前后台的相互传值详解

    这篇文章主要介绍了json实现前后台的相互传值详解,需要的朋友可以参考下
    2015-01-01

最新评论