My parents grew up during the depression. They were frugal, but of course to me that just seemed like normal. Mother had a large tin box, a little bigger than a classic Whitman's sampler candy box. Not sure what had been in it originally, but the description was written in Italian. I'm guessing it was a souvenir from an overseas tour in the late 1940's. It was jammed with a wild assortment of buttons. Mother or pearl, leather, enamel, red, purple, green, black, and white -- later, even plastic buttons.
If I lost or broke a button, my first chore was to find a matching, or close-enough button. I could then ask her to sew it on. That lasted until I was about 12, when I was pronounced mature enough to sew my own replacement buttons under Mother's watchful eye. She majored in home economics and there was definitely a right way to sew on a button!
My button box isn't as large and doesn't get used as often. It's still a great resource when one of us needs a button. I'm not sure where Mom's buttons came from, but I can tell you about mine. When I get a new item that comes with a replacement button in a little bag under the label, it goes in the button box. When I get a cheesy sewing kit at a hotel and there's a little white cuff button, it goes in the box. If I need a 'special' button and buy a card of them, the leftovers go in the box.
I suspect that if I were better at this, I'd take buttons off worn shirts, put the buttons in the box and make a potholder or a quilt square with the less worn part of the shirt. I'm not there yet, but maybe soon! Now, I just chuck the entire shirt in the Goodwill Box and march on. I had a friend who collected the neighborhood worn jeans and made cute throw quilts from them, complete with lots of pockets, but that's a different discussion!
Speaking of jeans, when the grommet button wears out or gets pulled off your favorite jeans, there's an answer in the button box! On the buttonhole side of the jean, select a button that fits the buttonhole. On the 'skin' side, pick a nice old smooth used button that is bigger than the residual grommet hole. Sew them together loosely on their respective sides through the hole (but anchor also in the fabric), then wrap a little extra thread between them to make a little 'stem' of thread so the outside button has some wiggle room for fastening. The inner button will serve as an anchor for the outer button, much like the back of the grommet did. This solution is much more comfortable than having a safety pin pop open in the old fastener's place!
When assembling your emergency sewing kit, don't forget to put a few buttons from YOUR button box in the kit, just in case!