描述此 Pull Request 的变更

将一个循环改为for...in的形式.

描述变更理由

如果viewthread时带有参数&highlight=text, 前端将对帖子进行高亮处理.
但是将relatedlink传入到relatedlinks函数之前, 有一个bug, 会导致数组长度变成当前帖子的pid.
在测试时这个问题不容易被发现, 因为测试站点pid一般不会很大. 但是在一个长期运行的站点, 这个bug将会越来越明显, 假如pid增长到100,000,000以上, 按照原函数的写法, 就会进行一个1000万次的循环, 直接阻塞页面渲染长达超过数十秒.

虽然导致数组变长的bug已经修复(!523:修复 在部分情况下高亮功能导致页面卡死的问题), 但是仍有第三方模板复制并使用未经修复的代码, 导致页面卡死.
因此需要从函数本身解决这个问题, 而不是修改自带的基础模版.

对不向前兼容或涉及安全性变更的特殊说明

经过caniuse和MDN搜索查证,for...in语法支持绝大部分浏览器(包括IE 6), 没有严重的不兼容问题.

关联 Issue