The Ethereum token standard (ERC20) is used for Ethereum smart contracts. Developed in 2015, ERC20 defines a common list of rules that an Ethereum token has to implement. Giving developers the ability to program how new tokens will function within the Ethereum ecosystem. This token protocol became popular with crowdfunding companies via Initial Coin Offering (ICO).
As of January 2018, there are more than 21,000 ERC20 token contracts. Among the most successful ERC20 token sales are EOS, Sirin Labs, Bancor, Quash and BANKEX raising over $70 million each. Mercury Protocol’s Global Messaging Token is an example of an application based on ERC20 tokens.
ERC stands for Ethereum Request for Comments.
ERC20 token has the following method-related functions:
The specific wording of the function is followed by a clarification of what it does, in [brackets]
TotalSupply [Get the total token supply]
BalanceOf (address _owner) constant returns (uint256 balance) [Get the account balance of another account with address _owner]
transfer(address _to, uint256 _value) returns (bool success) [Send _value amount of tokens to address _to]
transferFrom(address _from, address _to, uint256 _value) returns (bool success)[Send _value amount of tokens from address _from to address _to]
approve(address _spender, uint256 _value) returns (bool success) [Allow _spender to withdraw from your account, multiple times, up to the _value amount. If this function is called again it overwrites the current allowance with _value]
allowance (address *_owner*, address *_spender*) constant returns (uint256 remaining) [Returns the amount which _spender is still allowed to withdraw from _owner]
Transfer(address indexed _from, address indexed _to, uint256 _value). [Triggered when tokens are transferred.]
Approval(address indexed _owner, address indexed _spender, uint256 _value)[Triggered whenever approve(address _spender, uint256 _value) is called.]
Check More at http://www.futureapp.biz/blog/