javascript - 在 IE 中将表解析为数组对象的有效方法

标签 javascript jquery performance internet-explorer dom

我的表有超过 1k 行和超过 7 列,试图解析为数组对象,我尝试使用 jquery

$(tableSearch).each(function () {
    $('tr', $(this)).each(function (key, tr) {
        var self = this;
        var obj = new Object();
        var rowPos = 0;
        $('td', tr).each(function (rowPos) {
            obj[_self.colModel[rowPos].name] = $(this).html();
        });
        obj['Key'] = 'Rec-' + key;
    });
});

在 FF 中需要 300 毫秒,但在 IE 中需要 60 秒:(

你可以比较一下它的速度慢了大约 200 倍。

有什么办法可以提高 IE 的性能吗?我尝试了原始的javascript方法,在IE中仍然没有达到效率。

帮助我!!!!!!...我怎样才能在所有浏览器中获得相似的性能。

提前致谢

最佳答案

我得到了解决方案,如果我们这样实现,IE 会更快

table = document.getElementById("myGrid");
    for (i = 0; i < table.rows.length; i += 1) {
       var rowData = new Array();
       row = table.rows[i];
       for (j = 0; j < row.cells.length; j += 1) {
           cell = row.cells[j];
           rowData[j] = cell.innerHtml
       }
       obj.push(rowData);
    }

注意:如果您使用任何调试器,请禁用 Debug模式。

那么IE似乎还可以,但不可能比FF或safari快

关于javascript - 在 IE 中将表解析为数组对象的有效方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7078350/

相关文章:

javascript - XML 可以作为 iframe 的响应发送吗

javascript - 在 Node.js 中是否有更好的方法来做到这一点?

javascript - 如何在添加新链接后禁用链接?

mysql - 在mysql中使用数据库命令是否锁定整个数据库?

javascript - 按组查找最近的日期和输出值

javascript - 我可以制作一个从 B 而不是 A 开始的按字母顺序排列的列表吗

jQuery 选择所有单选按钮组

jquery - Bootstrap 4 : How to create a dropdown menu with an accordion inside it?

performance - 当屏幕上有很多控件时,会出现严重的 FireMonkey 性能问题

c++ - 为什么动态链接需要这么长时间?