我使用 node.js 作为我的服务器平台,我需要处理一个包含 65,000 个项目的非稀疏数组。
Javascript 数组不是真正的数组,但实际上是散列。索引访问伴随着将索引转换为字符串,然后进行哈希查找。(请参阅http://www.crockford.com/javascript/survey.html中的数组部分 )。
所以,我的问题是这个。node.js 是否实现了一个真正的数组?确实需要我们调整大小或删除项目的成本,但真正的随机访问没有任何 index-to-string-then-hash-lookup ?
谢谢。
编辑
我可能要求太多,但我的数组存储 Javascript 对象。不是数字。而且我不能把它分成许多类型的数组,每个数组都包含数字原语或字符串,因为对象有嵌套的子对象。尝试使用类型化数组将导致无法维护的代码。
编辑2
我肯定错过了什么。为什么它必须是全有或全无?没有真正数组的真正 Javascript 或没有 Javascript 优势的 C 样式扩展。拥有一个真正的 Javascript(无类型)对象数组是否与 Javascript 的本质相矛盾?Java 和 C#List<Object>
基本上是我正在寻找的。C# 更接近于List<DynamicObject>
.