Javascript でエンティティ システムを構築しています。これは基本的に、「Position」や「Sprite」などのコンポーネントからインワールド オブジェクトを構成する手法です。これらのコンポーネントはデータのみを保持し、マイナーなメソッドしかありません。
私は一種のデータベースに実装しています。エンティティは、コンポーネントのインスタンスにアクセスするための単なる ID です。
「データベース」は辞書で、次のようになります。
{
"ComponentType": ComponentInstances
}
Component インスタンスは次のようにアクセスされます: db[componentType][entityId]
.
entityId で最も効率的なのはどのデータ型か、つまり文字列か数値かが心配です。これらの型は Javascript でどのくらいのメモリを消費しますか?
もちろん、それが文字列の場合、データベースは辞書の辞書のように実装され、数値の場合は配列の辞書のように実装されます (どちらもオブジェクトであるため問題ありません)。
編集:参照と比較して、文字列と数値はどのくらいのメモリ負荷がかかりますか? 彼らはより効率的ですか?