星空网 > 软件开发 > Java

使用eval()将json字符串转换为对象要多加一个小括号

使用eval()将json字符串转换为对象要多加一个小括号:
关于eval()函数的具体用法这里就不多介绍了,具体可以参阅javascript的eval()方法一章节,下面就介绍一下为什么使用eval()函数将json格式字符串转换为对象的时候,需要多嵌套一层小括号,下面就介绍一下它的原因,希望能够对需要的朋友带来帮助。
先看一段转换代码:

var jsonStr='{"webName":"蚂蚁部落","webAddress":"青岛市南区","age":2}';var jsonObject=eval("("+jsonStr+")");console.log(jsonObject.webName);

以上代码可以将一个json格式字符串转换成对象,下面就介绍一下为何要嵌套一个效果括号。
如果不加小括号的话,字符串将被eval()函数处理为:

{"webName":"蚂蚁部落","webAddress":"青岛市南区","age":2}

在js中,如果一段代码既可以认为是表达式也可以认为是语句,那么语句优先,所以上面就是一个语句,那么"webName":"蚂蚁部落"就是标签语句,但是逗号运算符后面也是一个标签语句就不对了,因为运算符后面要跟着表达式才可以。如果外面套上一层小括号,那么代码就会被eval()处理成:

({"webName":"蚂蚁部落","webAddress":"青岛市南区","age":2})

因为小括号之中必须是表达式,那么里面的内容就成了一个对象直接量表达式,也就是转换成功了。
相关阅读:
1.大括号的用法可以参阅javascript中大括号{}的用法详解一章节。 
2.小括号的用法可以参阅js中小括号()的用法详解一章节。
3.对象直接量可以参阅javascript中什么是对象直接量一章节。
4.标签语句可以参阅javascript标签语句简单介绍一章节。

原文地址是:http://www.softwhy.com/forum.php?mod=viewthread&tid=11827

更多内容可以参阅:http://www.softwhy.com/javascript/




原标题:使用eval()将json字符串转换为对象要多加一个小括号

关键词:JS

JS
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

Fairywill:https://www.goluckyvip.com/tag/19117.html
fakenamegenerator:https://www.goluckyvip.com/tag/19118.html
Fakespot:https://www.goluckyvip.com/tag/19119.html
卖家沟通:https://www.goluckyvip.com/tag/1912.html
Falabella:https://www.goluckyvip.com/tag/19120.html
falbku:https://www.goluckyvip.com/tag/19122.html
夹江千佛岩景区门票(夹江千佛岩景区门票价格):https://www.vstour.cn/a/411232.html
武陵山大裂谷周围景点 武陵山大裂谷周围景点图片:https://www.vstour.cn/a/411233.html
相关文章
我的浏览记录
最新相关资讯
海外公司注册 | 跨境电商服务平台 | 深圳旅行社 | 东南亚物流