2012-12-04 38 views
-2

是否有可能,如果是,如何?在javascript中求和Float32Array

我想將多個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; 
} 
+0

你爲什麼不其長度重複?也許你應該詳細說明你的問題。 –

+0

,因爲我無法訪問成員... – Thomas

+0

@ThomasVerbeke請閱讀[你有什麼試過](http://whathaveyoutried.com)和[堆棧溢出常見問題](http://stackoverflow.com/faq) – Jeff

回答

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];