<script>
var str="{'height':'200px','widt':'20px'}"
{'height':'200px','widt':'20px'}//直接出现会报错等同下面;因为等号的内涵式先执行再赋值;
//var obj=eval(str);
var obj=eval("("+str+")");
alert(typeof obj)
var a=(1,2,3,4,5)
alert(a)//返回5
/*好的,问题解决了,为什么我们需要添加括号来框住JSON,因为这是()本身就是表达式,他会返回里面的值,如果里面有逗号,他会返回里面的最后一个值(逗号表达式),如果我们直接在eval中执行json就相当于直接在html中写{"height":"200px","width":"30px"},也就是字符串:字符串,这是不被允许的,及时没有报错,我们也不能得到我们想要的结果,*/
</script>
网友评论