我有一个看起来像这样的系统:
interface Data {
x: number;
y: number;
n: string;
}
const array = Array<Data>(100);
Run Code Online (Sandbox Code Playgroud)
我读过在 Chrome 中,如果数组只包含相同的类型,V8 引擎会将对象分配为 C 数组,但是否可以实际检查我的“数组”对象是否将充当 C 数组或字典,例如内存是连续分配的?
如果这不能完成,我知道我可以使用像这样使用 TypedArrays 的 SoA 模型:
interface Data {
x: Float64Array;
y: Float64Array;
n: ????;
}
const dataArray = {
x: new Float64Array(100),
y: new Float64Array(100),
n: ????????
} as Data
Run Code Online (Sandbox Code Playgroud)
但是我不知道如何将字符串存储在这样的数组中