When intending to express that somebody laughed very loudly and for a long time, what is the proper expression to use? Are they both correct?
She laughed her heart out!
She laughed her head off!
When using the adage heart out you imply that the action is very intentional and the person doing the action is putting all their effort into it.
When using the adage *head off you imply that the action was done excessively, but not necessarily purposefully.
To laugh your head off makes sense. Genuine laughter is uncontrollable, and during certain moments it may come excessively.
To laugh your heart out does not really make much sense, unless the circumstances are that the person is attempting to laugh purposefully and is doing it with great effort.
Take the word sing for a reversal.
To sing your head off does not really makes sense, unless the context is an occasion where excessive singing is what your were trying to do.
To sing your heart out makes sense. Wanting to impress your audience, you would likely put great effort into any singing performance.
You can eat your heart out with jealousy but not laugh your heart out.