In physical cash or money "double spending" is not there. As you go to shopkeeper hand over the paper cash and in exchange of that the shopkeeper gives you the goods you desired for. Here there is no double spending because the shopkeeper instantly verifies the cash given by you.
But in digital currency the term "double spending is prevalent" and Bitcoin although being a digital currency has that robust mechanism to prevent "double spending" and that is why it is so popular.
Bitcoin has a confirmation mechanism and along with that its public ledger is chronological and time stamped. Every 10 mins a block is produced and all the nodes within the network keeps a copy of the public ledger.
Suppose you have 1 BTC and you want to spend it online by paying it to a merchant. You also want to check how it prevents double spending, then let's see how it will happen in bitcoin network and how it will prevent double spending.
So let's say you made 1 BTC transaction to a merchant and you sign in again and try to send the same 1 BTC to another another merchant.
So when you do that, both the transaction will go into unconfirmed pool first. From that, only your first transaction get confirmations and get verified by the miners and your second transaction can not get verified as miners found that to be invalid, so that invalid transaction will be pulled from the network and will not added to the block.
So in this way it prevents double spending in this case.
But again what if both the transactions are taken by miners in parallel. In this case which ever transaction gets maximum confirmations will be added to the network and the other one will be pulled out from the network. That is why it is recommended for merchants to wait for 6 confirmations.
So the blockchain confirmation mechanism is very robust to prevent any kind of double spending and till now it is not tricked by that sense.
Double spending, as the name suggests, is a term that is used to refer to the possibility of spending a particular money or coin two or more times.
Obviously, this can only happen when a crypto is not secure and is not immutable from fraud and other cyber breach.
Today, Bitcoin has become farmidable coin because double spending is not possible on its network.
In basic terms, its when you use the same funds twice. Say I have 1 STEEM, I make a transfer of 1 STEEM to @bob, but then use that STEEM again to send to @bobby. All chains must have a way to prevent this and so nodes must talk to each other.