Javascript 如何在O(1)中更新redux/vuex存储中的元素?

Javascript 如何在O(1)中更新redux/vuex存储中的元素?,javascript,reactjs,vue.js,redux,vuex,Javascript,Reactjs,Vue.js,Redux,Vuex,通常如何在O(1)中更新存储区(redux、vuex)列表中的元素(哈希) 我需要元素的顺序,这很重要(我可以从列表中添加/删除元素)。我将在每毫秒更新元素,因此将进行大量更新 我的问题是,将元素的索引保存为元素的属性是非常糟糕的?或者,如果列表有500-1000个元素,可以使用。例如按Id查找?使用两个属性规范化存储形状 id到实体的映射 按所需顺序列出ID { byId:{ “post1”:{ id:“post1”, 作者:“user1”, 正文:“……”, 评论:[“评论1”、“评论2”

通常如何在O(1)中更新存储区(redux、vuex)列表中的元素(哈希)

我需要元素的顺序,这很重要(我可以从列表中添加/删除元素)。我将在每毫秒更新元素,因此将进行大量更新


我的问题是,将元素的索引保存为元素的属性是非常糟糕的?或者,如果列表有500-1000个元素,可以使用
。例如按Id查找

使用两个属性规范化存储形状

  • id到实体的映射
  • 按所需顺序列出ID

    {
    byId:{
    “post1”:{
    id:“post1”,
    作者:“user1”,
    正文:“……”,
    评论:[“评论1”、“评论2”]
    },
    “post2”:{
    id:“post2”,
    作者:“user2”,
    正文:“……”,
    评论:[“评论3”、“评论4”、“评论5”]
    }
    },
    allid:[“post1”、“post2”]
    }

使用此结构,您可以以O(1)复杂度更新特定实体,还可以通过迭代
allid
按插入顺序检索实体


可以找到更多信息

谢谢,很好的解决方案!