概述 今天产品反映有个5000条数据的页面的保存按钮很慢,查看代码看到是因为点击保存按钮之后,进行了查重操作,而查重操作是用2个for循环完成了,时间复杂度是O(n^2).没办法,只能想办法优化一下了. 主要参考了这篇文章:JavaScript 高性能数组去重 源码 简单来说,这个页面的要求是查找一个数组中的重复项,并且返回重复项的行号.源码简化后如下: checkData(tableData) { // console.time('数组检查重复项时间'); // 检查重复项,检查空值(全局)…