adding an initialized component

Hi

Is it possible to add a component that is already initialized to a gameobject?

I have a monobehaviour script attached to a gameobject and in mid-game I want to remove it from one gameobject and attach that same instance of the script to a different gameobject.

for what I see, gameObject.AddComponent() will initialize it, so I wonder whether there is something like addComponent(initializedMonobehaviour) or similar way to achieve it.

I can’t think of a straightforward way to transfer the component from one object to another but would it make sense to do the transition the other way round? Instead of moving the component, maybe you could delete the original mesh, colliders, etc from the object and replace them with the ones you need for the new object.