What is $evalAsync, and when is it preferable to $apply?

$evalAsync schedules expressions for the next digest cycle without triggering a new cycle. It’s used to prevent multiple $digest calls.