I wonder if doing `this._pendingUpdateCallbacks.length = 0;` is better here.

Pros: if we get lots of updates we save array allocs
Cons: if we get lots of components with single updates we hold on to empty array refs

My intuition is that throughout the lifetime of a component this will be worth it, on average. @jordwalke @yungsters ?