在javascript中总结Float32Array

时间:2012-12-04 19:52:48

标签: javascript arrays

是否有可能,如果是,如何?

我想将多个float32Arrays归为一个float32array。

我知道这听起来像是一个愚蠢的问题,但事实上这样做可能会在一段时间后退出。

是否有可能使它比这更快?

recBuffers是一个float32Array缓冲区数组,长度约为6594048

function mergeBuffers(recBuffers, recLength){

  var result = new Float32Array(recLength);
  var offset = 0

  for (var i=0; i<recBuffers.length; i++){  
      for (var j=0; j<recBuffers[i].length; j++){
        result[j] += recBuffers[i][j];
      } 
  }
  return result;
}

1 个答案:

答案 0 :(得分:3)

来自the MDN

  

一旦建立,您可以使用。引用数组中的元素   对象的方法,或使用标准数组索引语法(即使用   括号表示法。

给定两个float32Arrays ab,你可以这样做:

var c = new Float32Array(Math.min(a.length, b.length));
for (var i=c.length; i-->0;) c[i] = a[i]+b[i];