如何在 javascript 中将数组缓冲区数组转换为 float32array 或普通数组?

How to turn array of arraybuffers into either a float32array or a normal array in javascript?

我有一个数组缓冲区,这意味着我有

array[1] -> once this is clicked on, in the console, it holds this 

[object ArrayBuffer][object ArrayBuffer][object ArrayBuffer][object ArrayBuffer][object ArrayBuffer][object ArrayBuffer][object ArrayBuffer][object ArrayBuffer][object ArrayBuffer][object ArrayBuffer][object ArrayBuffer][object ArrayBuffer][object ArrayBuffer]

我必须获取这些数组缓冲区并将它们转换回我可以读取的数组。最初,我只有其中一个并且正在使用

    temp_float_array = new Float32Array(arr_buff); //turns array buffer data from hex bytes to an array of floats
    for (var i = 0; i < temp_float_array.length; i++) {
        float_array[i] = parseFloat(temp_float_array[i]);
    }

获取 arraybuffer 并将其转换为 float32array,然后从那里使用 parseFloat 使其成为普通数组。现在我有很多这样的数组缓冲区,我需要将每一个都变成一个人类可读的数组。感谢您的帮助或建议。

每个数组缓冲区中包含大约 50K 个值,

[-91.51844787597656,-91.5179443359375,-91.5174560546875,-91.51744842529297,-91.55493927001953,-91.5665283203125,-91.57928466796875,-91.59294128417969,-91.607177734375,-91.62168884277344...etc]

理想情况下,我需要按原样恢复这些值。

对于未来的任何人,这就是我最终所做的。

    temp_float_array = new Float32Array(arr_buff); //turns array buffer data from hex bytes to an array of floats
            for (var j = 0; j < temp_float_array.length; j++) {
                part_arr[j] = parseFloat(temp_float_array[j]);
            }
            float_array = float_array + part_arr;

我使用了嵌套的 for 循环。这是我的主 for 循环的内部,arr_buff 是每个单独的数组缓冲区。这为每个数组缓冲区提供了一组 float32 数组。在我的主 for 循环之外,我有

float_array = float_array.split(',');
for (var u = 0; u < float_array.length; u++) {
    float_array[u] = parseFloat(float_array[u]);
}

在逗号处拆分值,然后取 float_array,它现在有我的 float32 数组,然后将其变成一个具有几百万个值的大型数组。我确定这不是最干净或最快的解决方案,但我现在的工作解决方案。