我怎样才能打包东西[例如JavaScript 中的 array, object] 就像在 C++ 中一样?

How can I pack a thing [e.g. array, object] in JavaScript like in C++?

我想知道如何(如果可能的话)像在 C++ 中那样在 JavaScript 中打包数组,因为我想通过打包数组来微优化我的代码。在 C++ 中它看起来像这样:

#pragma pack(push, 1)
//declarations
#pragma pack(pop)

如何在 JavaScript 中复制此行为?

有关什么是包装的知识,请参阅 this

很难证明是否定的,但我相当确定 JavaScript 本身不存在类似的东西(我知道它不在语言规范中,并且不认为它在任何它的主要环境)。 JavaScript 根本没有指定对象或数组的内存格式(下面的类型化数组除外);实现以自己不同的方式做事。

您可以在 WebAssembly (Wasm)(甚至使用 C++)的浏览器环境中执行此操作,但在标准 JavaScript 环境中,您与裸机的距离比那。

对于某些 API,您可能会使用 typed array(如 Uint8Array)来提供和接收原始 bytes/words/longs,但这实际上与 [=11 不同=].