Run details:
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/134.0.0.0 Safari/537.36
Chrome 134
Windows
Desktop
one month ago
Test name Executions per second
DataView 49268020.0 Ops/sec
Float32Array 75652408.0 Ops/sec
Script Preparation code:
x
 
var size = 0xFFFF;
var data = new Float32Array(size);
var floatArray = new Float32Array(size);
var dataView = new DataView(new ArrayBuffer(size * 4));
for (let i = 0; i < size; i++) {
    data[i] = 100*Math.random();
    floatArray[i] = 100*Math.random();
    dataView[i] = 100*Math.random();
}
Tests:
  • DataView

     
    for (let i; i < size; i++) {
        dataView.setFloat32(i * 4, data[i]);
    }
    return dataView.getFloat32(i * size - 16)
  • Float32Array

     
    for (let i; i < size; i++) {
        floatArray[i] = data[i];
    }
    return floatArray[size - 4]