哪个更快,
使用XMLHTTP获取请求而不是使用eval()作为响应文本
使用JSONP技术加载脚本,然后评估脚本的innerHtml。
动态地将脚本标记添加到文档的头部,其中javascript对象被分配给变量?
我的直觉告诉我这应该是选项3,但我不确定eval与使用脚本标记的比较。有什么想法吗?
答案 0 :(得分:1)
它可能因浏览器和其他一些因素而异,所以我认为如果你真的想要最好的性能,你应该做一些测试并对它们进行分析。首先,eval()的性能可能会有很大差异,具体取决于你的eval()'
答案 1 :(得分:0)
您应该使用JSON2 library来解析json数据,因为使用eval
是不安全的(使用eval
导致大量潜在的网站漏洞利用),这很慢(特别是在较新的jitting JS引擎),最后(更重要的是)JSON2库提供的JSON对象正在成为ecma脚本(例如.javascript)标准的一部分,这意味着浏览器现在正在实现json解析(和字符串化)从而大大提高了性能。
令人高兴的是,如果您使用JSON2库,它会检测到JSON对象的本机实现的存在并且不会覆盖它,因此只要随意使用它将为您提供一个安全的实现,随着浏览器支持的改进,它将神奇地变得更快。
答案 2 :(得分:0)
我同意JSON2库可能是eval()的方法。但是对于传输来说,根据John Resig所做的一些分析,看起来JSONP机制比XMLHTTPRequest更快。