I know there is the word "spendthrift" — but what word denotes the habit of spending too much money or resources on things that are not essential?
Any of these:
- Profligate (n./adj.)
- Squanderer (n)
- Prodigal (n./adj.)
- Waster (n)
- Wasteful (adj)
- Thriftless (adj)
The frivolous lady would buy anything on a whim
Her frivolity knew no bounds
Besides simply being wasteful or careless with one's money there is is an expression:
to fritter away : to waste something, such as money, on someone or something, foolishly.
He was known to fritter away huge sums betting on the horses.