Local variables are reset each loop, so once you are done with your event that data is lost.
The object has instance variables, these will be wiped as soon as the object is destroyed.
Global variables can withstand this - but they are not designed to hold an objects stats since you can have many objects all looking for different values at the same time.
Here is how I worked with destroying enemies in my last project.
Enemies have a variable Boolean I set when they are killed and then I destroy them.
In a new condition if an enemy is destroyed and also has killed true (This eliminates 2 swords killing the same enemy during the same tick) I can call my loot function while still having that enemies position and name stored. I then pass these into a function so I can use them after my enemy loses that information lose the information.
(Mine is done with Families - but it should hold true with multiple of a single enemy as well)