don't destroy on load like in unity

in unreal4, is there any method like DontDestroyOnLoad in unity to keep the actor life when new level load?

No, all actors belong to a world and when the world is torn down everything is destroyed aside from a few core classes.

The way to get around this is to typically store the data you need in the Game Instance, then when the new level loads you create a new actor and put that data back onto it - if that makes sense.

Depending on what your game is like, you might be able use Level Streaming sublevels on a persistent map and have an actor ‘survive’ map changes that way. But yeah, the only data that survives map changes is that held inside the Game Instance.