Angular looks for changes to data-bound values through a change detection process that runs after every DOM event: every keystroke, mouse move, timer tick, and server response. This could be expensive. Angular strives to lower the cost whenever possible and appropriate.
Angular picks a simpler, faster change detection algorithm when you use a pipe.
In the next example, the component uses the default, aggressive change detection strategy to monitor and update its display of every hero in the heroes array. Here’s the template:
<input type=”text” #box
<div *ngFor=”let hero of heroes”>
The companion component class provides heroes, adds heroes into the array, and can reset the array.