我正在看angular 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做到这一点?

最佳答案

我求助于使用_.forEach,但是Angular的功能很慢(尤其是angular.copy)。正如评论所言,时间差异很小。但是,如果您像我必须处理的那样,需要处理企业中的大量数据,则_.forEach可以正常工作(这比查看讨厌的老派循环要好得多)。希望能有所帮助。 Here are is a link that tests the JS performance for 'for' loops from multiple libraries.

Here's the link for underscore (i.e. _)

07-25 21:57
查看更多