Countries need US dollars to conduct international business, the best way to have easily accessible USD is to have bonds, it's better than having piles of Benjamins.
Few countries would accept Chinese Yuan, for example, because they may suddenly lose half their value. There are other solid currencies such as the British Pounds, Euros, Japanese Yen and Swiss Francs(CHF) but their circulation is smaller or more local. Most South American countries happily accept Brazilian Reals but people in Asia will not, they may accept Yens but Yens aren't big in South America.
Yes and there are also multiple expiration dates for US(or any country really) bonds and they're really long, 20 or 30 years.
That's something these fiscal conservatives don't talk about. If I buy a new US bond right now(2021), at $100, I will receive 1.25$ payments or so every year, in 2 smaller amounts of 0.625$ every 6 months. With a maturity time of 30 years, they will keep paying me that ridiculous amount for 30 years and then in 2051 I will get back $100.
So while China may hold 1 zillion US bonds some of these will only be paid in full in 20-30 years. Of course, some others will be paid in full tomorrow, and others in 6 months etc. I don't know the exact figures—because they're never quoted—but they're not as scary as "THE US OWES CHINA 1 TRILLION DOLLARS".
They can, however, sell it to other people/countries/corporations. If they sold it all it could cause a drop in price for US Treasury Bonds but it would also hurt China.
See also:
https://fas.org/sgp/crs/row/RL34314.pdf
A lot less scary, the US has to pay China around $113.4 million every year, with spikes when a bunch of bonds mature.