哈希表与JavaScript中的对象

时间:2019-07-05 06:50:36

标签: javascript object hashtable javascript-objects

我是数据结构的新手,并且正在使用Javascript学习它。

我的问题是: 当我们使用javascript对象时,为什么需要哈希表? 有人可以给我一种情况,哈希表比对象有用吗?

3 个答案:

答案 0 :(得分:1)

“哈希表”在不同的语言中称为不同的事物。 Java具有HashtableHashMap,Ruby具有Hash,Python具有dict ...在JavaScript中,称为Map

对象的键仅限于字符串; Map键可以是任何键。

对象支持继承; Map仅包含专门放入其中的内容。

答案 1 :(得分:1)

认为您的意思是Map而不是HashTable。如果您需要以下一项,恕我直言地图可能会更有用,并且效果更好:

  • 保留键/值对的插入顺序;
  • 频繁添加和删除;
  • 不是字符串/符号的键。

我认为您可以在MDN

处获得更多信息。

答案 2 :(得分:0)

MDN文档对此很有帮助:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map#Objects_and_maps_compared

最值得注意的是,使用地图可为您提供将任何东西用作键,地图保留顺序的优点,并且在不断添加和删除值时可能会表现更好。