what is are the differences between empty() and html(“”) in jquery

what is are the differences between empty() and html(“”) in jquery

I noticed people using $("#div1").empty() to clear every thing inside the div, with attached events . and $("#div1").html("") to achieve the same. pls, tell me the difference between them or which one should be used.