使用angular $ filter和Filter后缀名称之间是否存在性能差异?

时间:2016-07-31 15:27:42

标签: angularjs performance filter

该文档提到了两种从控制器和服务调用过滤器的方法,这些方法适用于货币过滤器:

$filter('currency')

currencyFilter

通过查看angular的源代码,我看到第一个调用名为+ suffix的注入器将其返回。也就是说,为了大量使用过滤器或经常调用的过滤器,这会对性能产生影响吗? 我的想法是,如果你通过2路方式注入它,那么你可以引用过滤器功能并直接使用它。然而,在第一种方式中,每次需要使用过滤器时都会调用喷射器。

让我们说你把它放在一个经常被叫的观察者身上,我觉得这里有可能的漏斗。 有什么输入吗? Jsperf似乎一直在下降,直到他们发布v2,但也许有人已经有答案了?

1 个答案:

答案 0 :(得分:1)

$filter所做的只是getting a service from injector。注射器开销可以忽略不计。

这个问题可以被认为是初步优化。应用程序中有些地方对性能更为关键,需要更多关注。

如果过滤器用于许多观察者或摘要可能每秒触发多次,这提供了比过滤器应用方式更明显的瓶颈和优化点。