【问题标题】:Cross-browser key lookup performance in Javascript objectsJavascript 对象中的跨浏览器键查找性能
【发布时间】:2012-09-04 03:04:23
【问题描述】:

我正在使用 Javascript 进行数据密集型项目,其中有数千个带有短字符串作为“ID”的对象,需要通过 ID 进行有效查找。我(可能是幼稚的)方法是创建一个对象,每个对象都有一个属性,由 ID 键入。

不同的浏览器/JS 引擎如何在像这样的非常大的对象中实现键查找?我知道 V8 对具有少量属性的对象进行了高度优化,但是如果有成千上万的属性不断添加和删除会发生什么?对象是由哈希表支持还是在不同的浏览器中尝试?无论哪种方式,我都认为使用较短的密钥是有好处的,但是有没有人知道这是否是一个很大的好处?是否有任何浏览器在键查找方面如此糟糕(即是否使用顺序搜索?)以致于滚动我自己的数据结构会更高效?

【问题讨论】:

    标签: javascript performance v8 spidermonkey chakra


    【解决方案1】:

    多么巧合。前几天有一个关于这个的问题。 OP 生成了一些基准测试并在几个小时前发布了它们。我建议你检查一下:JavaScript Objects as Hashes? Is the complexity greater than O(1)?

    【讨论】:

      猜你喜欢
      • 2011-12-03
      • 2011-03-29
      • 1970-01-01
      • 1970-01-01
      • 2013-12-24
      • 2023-03-11
      • 1970-01-01
      相关资源
      最近更新 更多