ajax中eval()\JSON.parse()\parseJSON()和evalJSON()?

求解这几个方法的区别ajax中eval()、JSON.parse()、parseJSON()和evalJSON()的区别?
其中eval()、JSON.parse()不用导入js文件
parseJSON()需要json.js文件
evalJSON()需要prototype.js文件
这几个中是不是evalJSON()最常用啊?

json本身也是可以运行的js代码。所以可以调用eval来执行,事实上,eval不是专门针对json,任何js代码写成的字符串,都可以用它执行。这个过程相当于js解释器执行代码。
而parse则是纯粹将json视作数据加以解析。它是第三方库提供的。parse的好处是,如果json中包含了恶意代码,parse不会引起严重的安全问题。

JSON对象IE7-不支持,需要倒入json2.js类库

JSON.parse需要字符为标准json格式字符,否则报错,eval不需要。eval有安全问题,除非你保证字符串格式的安全性,只是数据,而不是恶意代码