I suppose it depends on the product and how "bad" we are talking. If it's just past the expiration date, I will check out the item before determining if it has to be tossed or if I can still use it.
Milk, if it's within a few days of it's expiration date, I'll smell it. If it still smells okay, I'll cook with it, but I won't drink it. Buttermilk, if it's past the expiration and it still smells like buttermilk, isn't curdled or mouldy, I'll use it.
I'll use eggs until they're gone even if they are past expiration. As long as they don't smell, I'm fine with using them.
Bread, I will eat past expiration, as long as it isn't mouldy. Once it turns mouldy, it's gone. I will also throw it out, though, if I know I bought it weeks ago, even if it isn't mouldy yet. Because that's just creepy. There was some loaf of bread that I knew I had bought at least four weeks prior. It still felt soft. Didn't smell strange and had no mould. That was kind of creepy.
Cheese. If it's in the package and past its expiration, I just check it for any mould. When it's open and it's grown mould, I just cut the mouldy bits off and use it. If it's completely overrun with mould, though, I throw it away.
Fruits and vegetable, I will usually cut off whatever is the mouldy part to salvage as much as I can. Herbs, though, like cilantro and parsley.. once it looks a little slimy, that stuff is gone.