可能有人不知道上面Bug截图的图片是啥,那是Firebug的DOM截图
aimgcount是浏览帖子中未缩放的图片的信息集合, 2544217是pid值,其下的1283199是图片的aid。
那么图中箭头所指多个undefined是啥? 不急,我们先做个试验:逐步修改这帖的pid以及关联图片的pid(后一个操作是让该图片依旧属于其帖子)。然后在chrome中观察内存占用
钻石恒久远一坑永流传 Javascript超级无敌通古斯天坑 Discuz所有版本通杀!
钻石恒久远一坑永流传 Javascript超级无敌通古斯天坑 Discuz所有版本通杀!
钻石恒久远一坑永流传 Javascript超级无敌通古斯天坑 Discuz所有版本通杀!
钻石恒久远一坑永流传 Javascript超级无敌通古斯天坑 Discuz所有版本通杀!
钻石恒久远一坑永流传 Javascript超级无敌通古斯天坑 Discuz所有版本通杀!
钻石恒久远一坑永流传 Javascript超级无敌通古斯天坑 Discuz所有版本通杀!
钻石恒久远一坑永流传 Javascript超级无敌通古斯天坑 Discuz所有版本通杀!
删除图片,内存消耗恢复正常
钻石恒久远一坑永流传 Javascript超级无敌通古斯天坑 Discuz所有版本通杀!
那如果改成 412345678结果如何呢?
钻石恒久远一坑永流传 Javascript超级无敌通古斯天坑 Discuz所有版本通杀!
内存消耗对比:
钻石恒久远一坑永流传 Javascript超级无敌通古斯天坑 Discuz所有版本通杀!
为什么随着帖子pid的增加内存耗用会大幅度增长呢?
答案就是这么一段代码(来自dz7.2):
它来自于 viewthread.htm。在这儿定义了一个 aimgcount的数组变量,然后在 viewthread_node.htm 中进行赋值: |