我有两个一维阵列,a
和b
。 a
有值,b
为空。 a
的长度是偶数。我想从a
中删除所有其他值,并将它们移动到b
,顺序与它们放置在a
中的顺序相同。将阵列中的每个其他值移动到新阵列中
var a = [1, 2, 3, 4, 5, 6], b = [];
成为
var a = [1, 3, 5], b = [2, 4, 6];
我想通filter
会做的伎俩,但我不与它自a
平均长度为300-400的性能是幸福的。
b = a.filter((i, idx) => {
return idx % 2 == 0;
});
a = a.filter((i, idx) => {
return idx % 2 == 1;
});
我也一直在寻找lodash,看看是否能文库任何可能帮助我,这就是近正是我要找的是_.chunk(array, \[size=1\])
的唯一功能。
我很感激任何和所有的帮助,以帮助我找出一个更好,更快的方式来做到这一点。
过滤元件400的一小阵列应几乎瞬时的。你是什么意思,你对表演不满意?你有没有注意到延误?它可以在一个单一的迭代来完成,但不会太大的差别 – slezica
你可以基准性能给出答案,将是非常有趣的,看看如何lodash对执行香草JS如: – Hinrich
@slezica我同意它不会使与400个元素的差异。不过,如果这被执行了很多次,它可以。 – Hinrich