js eval用法

来源:互联网 发布:单片机设计实例 编辑:程序博客网 时间:2024/06/15 23:26
java后台返回的字符串,注入js ,

最后利用eval()函数转换成了json格式。(这里的eval("("+data+")") 原因由于json是以”{}”的方式来开始以及结束的,在js中,它会被当成一个语句来处理,所以必须强制性的将它转换成一种表达式。JavaScript代码的时候强制将括号内的表达式。像字面量{},如若不加外层的括号,那么eval会将大括号识别为结束标记,那么{}将会被认为是执行了一句空语句。所以下面两个执行结果是不同的:

alert(eavl("{}");//return undefined

alert(eval("({})");//return object[Object]