基于数组的JavaScript对象

时间:2018-11-19 11:06:56

标签: javascript arrays hash hashtable javascript-objects

从我的阅读中,使用JavaScript:

Objects =哈希表,它们建立在数组上。但是,通常说数组是JS中的对象。这两个概念如何协调?

1 个答案:

答案 0 :(得分:0)

对象不是建立在数组上的。对象有自己的优化。

通常:

  • 对象用于“结构”,可预测的“形状”结构和预先已知的键(即使它们可以与动态键一起使用,也应使用Maps。请参见下文)。
  • 数组用于列表(以及队列和堆栈),键为数字或元素顺序重要的结构。数组是“特殊的”对象,并非相反。 (您可以像其他任何对象一样,将基于字符串的属性放在数组上。不过请不要这样做。)
  • Maps用于哈希表/字典,即键为动态且事先未知的结构。