Jackie Chan claims he blew a lot of his fortune on prostitutes, gambling and "generous gifts".
The 64-year-old actor blamed "insecurity and immaturity" on his behaviour in his younger years, which also saw him drive when drunk, even crashing two luxury cars in one day.
The 'Rush Hour' star first found success as a stuntman, which is when he started spending his money on gambling and prostitutes, in particular one woman who he new only as "number nine".
In excerpts from his autobiography, 'Never Grow Up', obtained by DailyMail.com, he revealed: "We all knew that if something went wrong, we wouldn't live to see the sun rise the next day. We had a short-term mentality which means recklessly spending our money."
And when his career as an actor took off, the 'Drunken Master' couldn't resist splashing the cash.
He wrote: "I started to carry large amounts of cash at all times. After you live in poverty, cash gives you a sense of security.
"I like having lots of people around me and every meal was with a big gang. Around 10 years ago, I spent $2m paying for other people's meals.
"I gave out extravagant gifts too; watches, cars, custom-made leather jackets, cases of expensive wine".
Elsewhere in the book, Jackie confessed he was a "total jerk" in his personal life, treating women badly and even throwing his toddler son Jaycee, now 36, across the room in a fit of rage, though the youngster was unhurt.
He also told how he cheated on his wife Joan Lin and was so paranoid she was a golddigger when she fell pregnant, he "constantly thought of ways to keep [his money from her."
He admitted: "I've not been a good father or a good husband but I did my duty to my son and his mother...
"I behaved so badly because of my deep insecurities. Ever since I was a little boy I'd been looked down on by rich kids."
Jackie also admitted to being filled with "shame" because he can't read or write and even his limitless American Express card is unsigned as a result.