为什么RegExp.test在IE中花费大量时间
Why is RegExp.test consuming a lot of time in IE?
当使用jQuery将HTML加载到元素中时,我发现IE的性能非常差。Chrome没有显示任何性能问题。更改IE浏览器模式似乎并不能提高性能。
在IE中运行探查器时,我发现大部分时间都花在了RegExp.test
函数上。
HTML:<div id="content"></div>
JavaScript:var htmlString = <div>...Lots and lots of content...</div>
$('#content').html(htmlString);
- jQuery版本:1.9.1
- IE版本:9
加载大量内容时,不要以开始标记开始,以结束标记结束。
将内容更改为:var htmlString = <div></div><div>...Lots and lots of content...</div>
在研究了这个问题之后,我发现了这个jQuery错误请求,它为我指明了正确的方向。jQuery票证#11456
似乎为了与IE兼容,JavaScript RegExp用于解析正在加载的内容。当内容以标签开始时,它会试图找到结束标签(或类似的东西)。如果数据量很大,那么进行解析可能需要相当长的时间。我一开始就放了一个空位,解决了我的问题。
更新JQuery可能会有所帮助。
- 问题:html()使用的正则表达式在IE>9中表现不佳
- 此处介绍:2012年提交,影响JQuery>=1.8.0
JQuery>=1.12.0/2.2.0
相关文章:
- Java脚本时间添加
- Json数据包含日期和时间格式
- 如何根据时间运行不同的脚本
- 用每小时的差值填充数组/列表-从下拉列表中给定两个时间值
- RegExp:匹配Javascript中除regex值之外的所有内容
- 在wordpress一定时间后更改自定义字段
- 更改angularjs中的日期-时间格式
- 将当前时间添加到我的页面上的特定部分
- 门户网站:当地时间有多有用
- 显示时间的脚本
- 如何在窗体打开时从javascript倒计时计时器值中节省时间
- 通过JSON&比较时间
- JavaScript正则表达式文本与RegExp对象
- Javascript时间轨迹
- 将日期时间作为 JSON 发送将无法在我的视图中正确显示
- 将日期时间从json转换为可读格式
- Regexp匹配的时间范围
- Javascript RegExp 替换以获取时间
- 为什么RegExp.test在IE中花费大量时间
- 在javascript中使用RegExp从记事本粘贴文本时,Textarea需要花费大量时间来验证文本