Javascript 锤炼性能

标签 javascript datatables

我刚刚开始使用数据表(java 脚本)来处理表格数据,由于 js,我能够使用搜索、每页多少行、排序和分页等功能。 在使用js之前,我只是在表格中显示数据(使用Ajax进行分页),但无法使用上述功能(在这种情况下性能良好)。 现在我使用 jquery.dataTables.js 和 jquery.js 文件作为表结构。但问题是,这严重影响了网站的性能,最初所有脚本都只在一页下,然后 Firefox 给出警告消息“无响应脚本”,然后我只是为表创建了单独的文件,然后我就不再收到此消息消息但性能较差。 我所做的是,从API中获取数据,将其存储到数据库中,然后显示出来,但是js花费了大量时间,有时当有数千条数据时它根本不显示表格。
我确实需要使用 js 来表,但无法承受这种糟糕的性能。 有人以前遇到过这个问题吗?
等待宝贵的建议。

最佳答案

您无法在 Javascript 中有效地存储和操作数千行数据。 MySQL 等数据库引擎具有各种 gubbin(索引、缓存),以加快搜索(查询)速度。 Javascript 没有这些,你可以根据需要优化你的存储方法和搜索算法,但你永远无法完成一个有效的解决方案。

分页应该在服务器上。服务器发送给你30行数据,当你想要更多时,你向服务器请求更多;通常以新页面加载的形式用另一组结果替换当前内容,或者以 AJAX 请求的形式将新内容追加/添加到现有内容中。

当您想要搜索数据时,使用 Javascript 适合在页面上的内容(约 10 行)中进行搜索,但要搜索整个数据集,请将查询发送到服务器并让您的数据库引擎做工作。

关于Javascript 锤炼性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3793001/

相关文章:

javascript - 在 jQuery 中是否可以将方法设置为 var?

javascript - 基于单选按钮和复选框的数据表排序

jquery - 如何使用数据表服务器处理来格式化/自定义表列中的数据?

javascript - 当选择要触发事件的行时,YUI 获取特定的单元格值

javascript - 在不访问配置的情况下使用 requirejs 加载外部脚本

javascript - HighCharts 柱形图到饼图

javascript - 如何使用 Ajax 连接到 Java servlet?

javascript - 图表选项不与图表 js 一起使用

javascript - Knockout - 如何引用单击的元素并传入参数

mysql - 数据表 + 正则表达式 + 服务器端处理