欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

javascript使用eval解析json的注意点

程序员文章站 2022-05-18 18:42:04
...
对于json格式的字符串,在使用eval将字符串转换为json对象时需要注意在前后加上小括号。如下所示:
<script type="text/javascript">
    var data = '{root:[{name:"1", value:"0"},{name:"6101", value:"北京"},{name:"6102", value:"天津"}]}';
    var dataObj_1 = eval(data);
    var dataObj_2 = eval("(" + data + ")");
    console.info(dataObj_1);
    console.info(dataObj_2);
</script>
 

 该代码的运行结果如下:


javascript使用eval解析json的注意点
            
    
    博客分类: JavaScript JavaScripteval 
    之所以会出现如上的结果,是因为eval本身就可以解析并且运行字符串中的代码。由于json是以{}的方式来开始和结束的,在JS中,它会被当成是一个语句块来处理,所以想要不被当作语句块来处理,就必须强制性的将它转为一种表达式。加上圆括号的目的就是为了使函数在处理的时候强制将括号内的表达式转为对象,而不是作为语句来执行。

  • javascript使用eval解析json的注意点
            
    
    博客分类: JavaScript JavaScripteval 
  • 大小: 34.9 KB
相关标签: JavaScript eval