将字符串转换为JSON对象

很多时候我们需要组装字符串为json对象,首先要组合字符串,然后转换为json对象,如下面的例子:

<script type="text/javascript">
  
<!--
  
var a=50,b="xxx";
  
var arr="{id:"+a+",name:'"+b+"'}";
  
//-->
</script>

组合成了字符串arr,下一步就是转换成对象了,很快我们会想到使用eval方法,但如果这样做转换会出现错误,今日偶就这样尝试了,那该如何转换成json对象呢?郁闷许久,之后在json官网提供的json.js文件中找到了解决办法,方法如下:
在字符串两端再加上括号然后eval就ok了。测试代码如下:

<script type="text/javascript">
  
<!--
  
var a=50,b="xxx";
  
var arr="{id:"+a+",name:'"+b+"'}";
  arr
=eval('('+arr+')')
  alert(arr.name);
  
//-->
</script>
原文地址:https://www.cnblogs.com/tianguook/p/2071200.html