请问for循环push有哪些优化思路呢?

原始数据 json1

{
    a: {
        q: '',
         w: ''
    },
   b: {
        q: '',
         w: ''
    },
    c: {
        q: '',
         w: ''
    }
    ....
    // 2000多个
}

代码,需要 newArr

const newArr = []
for (const i in json1) {
    newArr.push {
        w: json1[i].w
        // 这里只需要原json的一部分
    }
}

每2秒就要计算一次。太耗时了。请问有什么优化方法呢?十分感谢?或者换什么写法呢?

阅读 2.9k
2 个回答

let newArr=Object.values(json1).map(child=>{return child.w;});

建议你缓存数据做对比,如果有变化循环push。
至于循环方式最快的是最原始的for(),但是该方法不支持对象循环,建议for in。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题