我正在查看角度1.3.4中angular.forEach的代码,它看起来像以下......
function forEach(obj, iterator, context) {
...
for (key = 0, length = obj.length; key < length; key++) {
if (isPrimitive || key in obj) {
iterator.call(context, obj[key], key, obj);
}
...
return obj;
}
但根据this link,使用减量更快。那么我应该切换到一个纯JavaScript的循环?如果性能问题,为什么Angular团队会增加?或者是否有一种方法(缺少重写)来获得angular.forEach来做到这一点?
答案 0 :(得分:1)
我使用_.forEach代替,Angular的功能很慢(特别是angular.copy)。正如评论所说,时间差异很小。但是,如果你正在处理像我一样的企业数量的数据,_。forEach工作得很好(这比看一个讨厌的旧学校循环要好得多)。希望有所帮助。 Here are is a link that tests the JS performance for 'for' loops from multiple libraries.