我正在用 Javascript 构建一个实体系统。它基本上是一种由组件组成世界对象的技术,例如“位置”或“精灵”。这些组件只保存数据,它们只有次要的方法。
我在一种数据库中实现它,实体只是一个用于获取组件实例的 id。
“数据库”是一个字典,看起来像这样:
{
"ComponentType": ComponentInstances
}
一个 Component 实例是这样访问的:db[componentType][entityId]
.
我担心对于 entityId 最有效的数据类型是:字符串还是数字?这些类型在 Javascript 中占用多少内存(我知道它会有所不同,但即使是估计也会有用)?
当然,如果是字符串,则数据库将像字典字典一样实现,如果是数字,则数组字典(没关系,因为两者都是对象)。
编辑:与参考相比,字符串和数字有多少内存?他们更有效率吗?