我正在为 jQuery 运行性能基准测试(不要问),发现了一些有趣的东西。出于某种原因,与this[0] = element
相比,this.foo = element
似乎很慢。这是强制性的 jsPerf 案例。
谁能解释为什么会有这样的性能打击?除了明显的"使用字符串键"之外,还有什么方法可以提高性能吗?
必须
发现[0]
不兼容,转换为字符串("0"
),然后用作字符串查找["0"]
。
我不知道它是否解释了100%发生的事情,但无论如何,这是普遍的部分。
其余的大部分将是基于每个引擎的引擎盖下的优化。
,也不是数组查找。
它只是对象上的括号表示法。