Well.... maybe you don't. However, _triglist is dynamic: it updates automatically as the units in the trigger area change. If the array changes in the middle of the loop, this could screw up the count thing and so on.
Much better to crystallise the array. That way you are dealing with a one, known array rather than a constantly changing array.
Hope that makes sense. If it doesn't, imagine doing it with a dynamic array of three units, when one of them gets killed during the first pass of #innerloop. Not pretty.