【问题标题】:Hashtable vs objects In javascriptHashtable 与 JavaScript 中的对象
【发布时间】:2019-11-15 18:48:54
【问题描述】:

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

我的问题是: 为什么我们在 javascript 中有对象时需要哈希表? 谁能给我一个哈希表比对象更有用的情况?

【问题讨论】:

标签: javascript object hashtable javascript-objects


【解决方案1】:

“Hashtable”在不同的语言中被称为不同的东西。 Java 有HashtableHashMap,Ruby 有Hash,Python 有dict……在JavaScript 中称为Map

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

对象支持继承; Map 只包含具体放入其中的内容。

【讨论】:

    【解决方案2】:

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

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

    我想你可以在MDN获取更多信息

    【讨论】:

      【解决方案3】:

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

      最值得注意的是,使用映射可以让您使用任何东西作为键,映射保持顺序,并且在不断添加和删除值时可能会表现得更好。

      【讨论】:

        猜你喜欢
        • 2013-05-09
        • 2021-10-10
        • 1970-01-01
        • 2023-03-30
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多