在浏览器应用程序中,何时使用Float32Array
而不是标准JavaScriptArray
才有意义呢?
这个性能测试显示,Float32Array
通常要慢一些,如果我理解正确,标准的Array
将数字存储为64位,因此在精度上没有优势。
除了任何可能的性能损失之外,Float32Array
还有可读性差的缺点——需要使用构造函数:
a = new Float32Array(2);
a[0] = 3.5;
a[1] = 4.5;
使用数组字面量替代
a = [3.5, 4.5];
我问这个问题是因为我正在使用 glMatrix 库,默认使用 Float32Array
- 想知道是否有任何理由不强制使用 Array
,这将允许我使用数组字面量。
new Float32Array([3.5, 4.5])
。Float32Array
比Float64Array
慢得多,因为每次对数组内容进行操作时,值都必须转换为/从 64 位值转换,因此如果内存空间允许且您的目标是速度,请尝试使用Float64Array
。 - ZachB