【发布时间】:2016-09-01 20:48:38
【问题描述】:
我有 2 个数组:
var one = ['da22', 'ye66', '17hy'] 和
var two = [{publicID: 'da22', score: '2'}, {publicID: '17hy', score: '2'}, {publicID: 'ye66', score: '2'}]
我希望two 根据one 由publicID 订购,所以应该是
two = [{publicID: 'da22', score: '2'}, {publicID: 'ye66', score: '2'}, {publicID: '17hy', score: '2'}]
NodeJS 中是否有内置方法来执行此操作?
我已经让它工作了,但是它不是很有效。我有一种方法可以将元素从一个索引移动到另一个我正在使用的moveFromTo(oldIndex, newIndex:
for (var r=0; r<one.length; r++) {
if (one[r] != two[r]['publicID']) {
two.moveFromTo(one.indexOf(two[r]['publicID']), r)
r=-1; continue;
}
}
但是随着事情的发展而不得不使用r=-1——尽管有效——似乎并不是最好的想法。
任何想法都将不胜感激。
非常感谢。
【问题讨论】:
-
为
two中的对象定义您希望发生的事情,而one中没有匹配的publicID。 -
@Makyen - 总会有一个匹配的对象
-
@Makyen - 错字已修复
-
所以
one和two之间会有总是精确一一对应的关系吗?
标签: javascript node.js