在javascript

时间:2015-04-27 14:06:05

标签: javascript arrays aggregation typed-arrays

大家好,我试图找出将两个类型数组聚合成一个数组的最快方法。

想象一下数据看起来像这样[Int8Array,Int8Array]

我希望最终得到一个

Int8Array

目前我试图遍历父数组并通过子数组,因为类型数组不支持concat方法,我无法正常缩减和连接方式。

  for (var i = 0, len = input.length; i < len; i++) {
     for (var n = 0, len = input[i].length; n < len; n++) {
       output.push(input[i][n]);
     }
  }

但我觉得必须有一种更有效的方法来做到这一点。

尝试使用set方法似乎更快但不适用于2以上。

http://jsperf.com/typed-array-aggregation

3 个答案:

答案 0 :(得分:0)

要完成此任务,您必须完成循环。但在这里你可以看看其他一些方法。

Merge keys array and values array into an object in Javascript

merge two arrays (keys and values) into an object [duplicate]

答案 1 :(得分:0)

请参阅以下链接。 How can I merge TypedArrays in JavaScript?

他们使用不需要使用循环的set方法

答案 2 :(得分:0)

不适用于类型阵列

您可以concatenate这样的数组:

var arr1 = ['1','2','3'];
var arr2 = ['a','b','c'];
var concatArr = arr1.concat(arr2);

//result: ['1','2','3','a','b','c']

来自Mozilla的网站:Array.prototype.concat