【发布时间】:2013-10-14 10:40:28
【问题描述】:
例如,我有两个对象数组
[
{
'id':1,
'value':'someval for id 1',
'score':1
},
{
'id':2,
'value':'someval for id 2 with score 2',
'score':2
},
{
'id':4,
'value':'someval for id 2',
'score':1
}
]
和
[
{
'id':2,
'value':'someval for id 2 ',
'score':1
},
{
'id':3,
'value':'someval for id 3',
'score':1
}
]
我想把它们都同步成这样
[
{
'id':1,
'value':'someval for id 1',
'score':1
},
{
'id':2,
'value':'someval for id 2 with score 2',
'score':2
},
{
'id':3,
'value':'someval for id 3',
'score':1
},
{
'id':4,
'value':'someval for id 2',
'score':1
}
]
所以,我希望同步在此规则上起作用
- 如果具有 id 的项不存在于数组之一中,则从存在的数组中复制它
- 如果两个项目具有相同的 id,我们保留得分较高的项目
是否有任何库或节点模块可以对相当大的数组进行这种同步(首选 nodejs 模块)?
我应该从哪里开始我的研究才能以适当的方式实现这个功能?
【问题讨论】:
-
这两个数组总是像
id那样排序吗?它们可以有多大? -
不,没有排序,但如果我们需要,它们可以排序。数组大小从 1000 到 10000 个元素,所有这些代码都必须在 nodejs 中执行,而不是在浏览器中...
标签: javascript arrays node.js synchronization