When does virtual scroll reset?

It says in the Ionic 2 docs…

It’s important to note that when this data has changed, then the entire virtual scroll is reset, which is an expensive operation and should be avoided if possible.

Does this only mean when the entire dataset is changed or even if items are added to it?

e.g.
dataSet = [1,2,3];
dataSet = [4,5,6];

or
dataSet = [1,2,3];
dataSet.push(4);
dataSet.push(5);

add or remove item will reset virtual scroll.

Currently , I’m looking for a workaround to remove an element from the list without losing the scroll position.