这里写自定义目录标题
数据量很大时,JavaScript 数组操作的一些优化记录
持续更新。。。
创建已知数量的数组
使用赋值代替push操作
示例:创建100w长度值等于索引的数组
// Bad 23.94091796875ms
var n = 1000000,
arr = []
for (let i=0; i<n; i++) {
arr.push(i)
}
// Good 7.080078125ms
var n = 1000000
var arr = new Array(n)
for (let i=0; i<n; i++) {
arr[i] = i
}
从数组中删除一部分数据
应尽量减少数组循环的次数
/**
* 迭代过滤数组
* 当数据量很大时(超过1w)这个方法会比filter性能更好
* @param {*} arr
* @param {*} condition
* @param {*} cb
*/
function reduceFilterArr(arr, condition, cb) {
let w =