I make it a practice to “shop” by way of thinking about it, shopping for the best deals, reading the reviews, comparing features and prices and actually looking at the item if it is in an actual store versus on the internet. Then, I make the clear decision to buy or not to buy.
Investing the time and not making an impulse buy allows you time to evaluate the buying decision and to come down from the high you get when you go shopping. The cool part is, much of the time after I do all that I often walk away not buying it unless I truely need it. And that feels even better! If you then get non-buyers remorse and decide you really need or want it, go ahead and buy it.