Javascript 需要优化多个ng重复和ng if

Javascript 需要优化多个ng重复和ng if,javascript,html,angularjs,optimization,Javascript,Html,Angularjs,Optimization,我已经写了一些角度代码,但我不是很自豪。。有人能告诉我以下方面可能的优化: **上下文(我想不是真的需要):** 我想展示不同类型旅行的平均长度,按不同的公司进行分组。 在我的角度控制器中,我正在初始化范围中的4个对象数组: tripDoneWithGuide-->使用指南发生并已完成的行程列表 TripongWithGuide-->与向导一起发生但尚未完成的行程列表 tripDoneWithoutGuide-->在没有向导的情况下发生并已完成的行程列表 TripOngWithoutGuide

我已经写了一些角度代码,但我不是很自豪。。有人能告诉我以下方面可能的优化:

**上下文(我想不是真的需要):**

我想展示不同类型旅行的平均长度,按不同的公司进行分组。 在我的角度控制器中,我正在初始化范围中的4个对象数组:

  • tripDoneWithGuide-->使用指南发生并已完成的行程列表
  • TripongWithGuide-->与向导一起发生但尚未完成的行程列表
  • tripDoneWithoutGuide-->在没有向导的情况下发生并已完成的行程列表
  • TripOngWithoutGuide-->与向导一起发生但未完成的行程列表
这些列表中的每个对象都有2个属性:

  • companyId-->实现该行程的公司的ID
  • avgLength-->此公司的平均行程长度
基本上,他们中的任何一个都可能是他的样子: { “对象”:{ “公司ID”:“1”, “avgLength”:“30” }, “目标2”:{ “公司ID”:“2”, “avgLength”:“60” } }

以下是我到目前为止所做的:

**代码部分:**

<div ng-repeat="tDWG in tripDoneWithGuide">
<span> Average Length Trip for the Company : {{ tDWG.companyId }}</span>
<span> Avg Length Trip Done With Guide : {{ tDWG.avgLength }}</span>
<span ng-repeat="tDWOG in tripDoneWithoutGuide" ng-if="tDWG.companyId ==  tDWOG.companyId">
Avg Length Trip Done Without Guide : {{ tDWOG.avgLength }}
</span>
<span ng-repeat="tOWG in tripOngoinWithGuide" ng-if="tDWG.companyId ==  tOWG.companyId">
Avg Length Trip Ongoing With Guide : {{ tOWG.avgLength }}
</span>
<span ng-repeat="tOWOG in tripOngoinWithoutGuide" ng-if="tDWG.companyId ==  tOWOG.companyId">
Avg Length Trip Ongoing Without Guide : {{ tOWOG.avgLength }}
</span>
</div>

公司的平均行程长度:{{tDWG.companyId}
使用向导完成的平均长度行程:{{tDWG.avgLength}
无导向装置的平均长度行程:{{tDWOG.avgLength}
正在使用向导进行平均长度旅行:{{tOWG.avgLength}
正在进行无指南的平均行程长度:{{tOWOG.avgLength}
这是一种工作。。我设法得到按公司分组的结果。 但是1)我并不为这段代码感到骄傲,我觉得有很多不必要的循环

2) 当一家公司没有一种旅行的价值时,什么也没有出现,威奇看起来很奇怪。。我更喜欢使用默认值,比如在switch指令中显示“0”

你会给我什么样的优化建议?我知道这不是真正先进的算法,但我仍在努力

PS:对不起我的英语,如果这篇文章没有意义,请告诉我,我会尝试用另一种方式重新写


提前感谢大家

嗨..如果您需要修复性能。。。尽量不要使用{{myvar}}..而不要使用ng bind=“myvar”您是否打算只包括tripDoneWithGuide中包含的公司?这就是它现在的工作方式,因为它是顶级循环。@jbrown我甚至没有注意到并考虑过这一点。。但是不,我想包括所有的公司,所以我的代码是完全错误的。。谢谢你的注意that@lilli-我建议您在服务器端或angular controller中整理数据,而不是在html中处理。@jbrown是的,明天早上我将尝试在angular controller中按公司进行映射以获取所有信息。非常感谢你的提醒!