混合整数和长字符串时,WebKit JavaScript对象属性迭代可怕地降级

时间:2013-09-19 13:22:13

标签: javascript performance properties webkit

我在JavaScript中迭代一个大对象的属性,特别是在WebKit浏览器中遇到了一个瓶颈,我似乎无法编码。

基本上,如果我有一个主要由整数值键入的对象作为属性(1,2,4,10678等),然后添加一些长属性名称(“somelongdescriptorofaproperty”)迭代时的性能对象降级10倍或更多(在我最糟糕的情况下降低80倍!)

如果我的对象的属性是很多短字符串和一些长字符串,那么这不会发生,因此不是“整数只是更快的兄弟”的情况。混合两者似乎是因素。

看看这个名不副实的jsperf,看看我的观点 - > http://jsperf.com/object-recursion

为什么会这样?这是一个WebKit'功能',这是什么方式?要使单独的对象只包含整数属性和冗长的属性吗?

0 个答案:

没有答案