javascript - 为什么 angular.forEach 中的 Angular 会递增而不是递减?

标签 javascript angularjs

我正在查看 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 for 循环吗?如果性能是一个问题,为什么 Angular 团队还要增加规模?或者有没有办法(无需重写)让 angular.forEach 做到这一点?

最佳答案

我转而使用 _.forEach,Angular 的函数很慢(尤其是 angular.copy)。正如评论所说,时间差异很小。但是,如果您像我一样处理企业级数据量,则 _.forEach 工作得很好(它比查看令人讨厌的老式 for 循环要好得多)。希望有帮助。 Here are is a link that tests the JS performance for 'for' loops from multiple libraries.

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

关于javascript - 为什么 angular.forEach 中的 Angular 会递增而不是递减?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27911727/

相关文章:

javascript - 单选按钮值在 Angular 中为空

javascript - asp.net web api 405方法不允许,发布,自定义操作

jquery - Angular ng-model 不绑定(bind) jQuery 日期选择器值

javascript - 使用 github API 在点击时显示 repo 提交

javascript - 有没有办法用 JavaScript 在 HTML 中强制硬编码样式?

javascript - 无法让 idAttribute 在 Backbone 中工作

angularjs - 使用 angularjs ng-options 和 ng-change 时发送选项对象

angularjs - 使用 $routeProvider 时的无限重定向

javascript - $ ("SELECTOR").css() 的复杂度

javascript - Cordova WebView,打开InAppBrowser并同时发布表单