var str = '{"name":"小明","age":18}';

将字符串转化json对象:

  1. var json = JSON.parse(str);
  2. var json = eval("(" + str + ")");
  3. var json = (new Function("return " + str))();

通过console.log()将json打印到控制台,不管是使用以上3种哪一种方法,都能在chrome控制台看到成功转化的结果:

使用JSON.parse()方法来转化json对象,需要注意的坑点是什么?

1.字符串的数据格式

以上举例 str = '{"name":"小明","age":18}'; 属性name和age都用双引号引住,
有的人可能会习惯写成对象形式的字符串,如:str = '{name:"小明",age:18}';
结果使用JSON.parse()来转化会报错,因为使用JSON.parse需严格遵守JSON规范。


2.单引号与双引号

我们看到一开始的举例中 var str = '{"name":"小明","age":18}'; 使用单引号来套双引号,如果反过来写呢,如:var str = "{'name':'小明', 'age':18}";(相信也不少人习惯用双引号套单引号)

结果使用JSON.parse()来转化也会报错


3.兼容问题
IE6/7浏览器中不支持使用JSON.parse()方法转成json对象,所以需要引入一个json2.js文件。可以在这个网站(https://github.com/douglascro...)去下载对象文件。

最后总结来说,如果使用JSON.parse()方法来转化成json对象的数据格式的话,需要注意的是被转化的字符串里面的属性要使用引号,并且总体是单引号套双引号的方式,以及IE6/7浏览器是不支持该方法。

当然,如果你使用eval()或者new Function()的方式来转化,那就完全可以忽略上述的这两点需要注意的地方~( ̄▽ ̄~)(~ ̄▽ ̄)~哈哈


附:

eval() 函数可将字符串转换为代码执行,并返回一个或多个值

eval调用时,实例为eval( "( javascript代码 )" )

var str = "function(){alert('a');}“;

str = eval("("+str+")");

str();


eval()的返回值

eval()的返回值遵循以下规则:

1.如果eval()的参数不是字符串,那么eval()将直接返回参数。

2.如果eval()的参数是字符串,那么eval()将这个字符串解析成代码后进行执行,并返回最后一行代码执行的结果。

3.如果字符串无法解析成合法的代码,eval()将抛出SyntaxError错误

js字符串转换为对象格式相关推荐

  1. js字符串转换为对象格式的3种方法

    背景: js字符串转换为对象格式,一般都会想到JSON.parse(),但数据不是标准的 JSON 格式的时候会解析出错,这时候就可以使用eval() 函数.new Function()方法来转换. ...

  2. javascript中将字符串转换为json格式的三种方法

    摘自:http://www.phpzixue.cn/detail1128.shtml javascript中将字符串转换为json格式的三种方法:  json在我们js的开发过程中经常会用到像在使用a ...

  3. c语言 date转string,c如何将字符串转换为时间格式

    1.C语言中 有没有函数可以将字符串直接转为时间格式的 由于实际生活中,字符串形式的时间有可能有多种形式,比如月日年,或年月日,中间的分隔符也可能有所不同.所以C语言并没有提供此类的转换函数. 如果有 ...

  4. mysql内置函数,在mysql里面利用str_to_date()把字符串转换为日期格式

    mysql内置函数,在mysql里面利用str_to_date()把字符串转换为日期格式 示例:分隔符一致,年月日要用%号 select str_to_date('2008-4-2 15:3:28', ...

  5. postgresql数据库的 to_date 和 to_timestamp 将 字符串转换为时间格式

    数据库中:字符串 转换为 时间格式 二者区别: to_data 转换为 普通的时间格式         to_timestamp 转换可为 时间戳格式 出错场景: 比较同一天 日期大小的时候,很容易出 ...

  6. python str转json_Python中如何将一个字符串转换为json格式呢?

    摘要: 下文讲述Python中字符串转换为json格式的方法分享,如下所示: json是各大语言都支持的一个对象,在web API开发中,我们经常使用json格式进行数据传输, 那么在Python中, ...

  7. js字符串转日期格式

    原文地址为: js字符串转日期格式 C#论坛同步地址:http://www.sufeinet.com/thread-1064-1-1.html js字符串转日期格式 ,JavaScript字符串转日期 ...

  8. php将字符串转换为json格式,js中将字符串转换为json格式的三种方法

    json在js的开发过程中经常会用到,像在使用ajax开发的项目过程中,经常需要将json格式的字符串返回到前端,前端解析成json对象. 下面为大家介绍下将字符串转换为json对象的三种常用的方法: ...

  9. js字符串转换为json对象JSON.parse()及将json对象转为json字符串JSON.stringify()

    一.JSON对象中有两个非常好用的方法: 1 JSON.stringify接收一个JS对象转化为json字符串 2 JSON.parse接受json字符串转化为JS对象 const my={ name ...

最新文章

  1. 自动驾驶L3量产追梦:如何跨过车规级和低成本门槛?
  2. eeglab中文教程系列(17)-DIPFIT对独立成分进行等价偶极子定位
  3. OpenStack 虚拟机热迁移流程图
  4. Druid:一个用于大数据实时处理的开源分布式系统——大数据实时查询和分析的高容错、高性能开源分布式系统...
  5. Html 教程 (8)表单
  6. 安装windows时loading files结束就重启_Boot Camp安装windows 10
  7. (三) shiro通过jdbc连接数据库
  8. 设置eclipse中的编辑区的背景颜色、注释文字的颜色、修改注释内作者名和时间
  9. django模型的字段类型和关系
  10. win10 使用ssh连接服务器 ‘’Bad owner or permissions on C:\\Users\\Administrator/.ssh/config‘’
  11. 《天天数学》连载41:二月十日
  12. python自定义模块与模块调用
  13. Android Studio实现 历史上的今天
  14. 振动试验条件及试验标准
  15. 给摩托罗拉C1200数字对讲机写频
  16. 微软苏州面经:前两面简单,三面困难
  17. python已知三角形的顶点坐标,求任一顶点角度
  18. 洗手池下水管堵了怎么办
  19. id门禁卡复制到手机_门禁卡复制到苹果手机
  20. Java基础: contains方法的用法

热门文章

  1. ArcGIS批量处理悬挂线
  2. GD32F103Cx中JTAG引脚如何配置为普通IO或复用其他功能
  3. python 画三角形matli_python 实现波浪滤镜特效
  4. python数组变整数
  5. nik collection mac中文版插件内容
  6. 【IDEA 断点调试】
  7. html2canvas 苹果手机,html2canvas 部分iphone手机机型出现空白
  8. 2014-05-13 13:35:42
  9. 计算机简单的操作是什么知识,有关计算机的简单题目谢谢1、Windows操作系统是一个的操作系 爱问知识人...
  10. 【整理】屏幕色彩与分辨率区别,PPI的概念,IPS屏与TFT屏