2.3 KiB
Display Logic and Input
When creating an Application, it is useful to convert between user-friendly strings (usually displaying ether) and the machine-readable values that contracts and maths depend on (usually in wei).
For example, a Wallet may specify the balance in ether, and gas prices in gwei for the User Interface, but when sending a transaction, both must be specified in wei.
The parseUnits will parse a string representing
ether, such as 1.1
into a BigNumber in wei, and is
useful when a user types in a value, such as sending 1.1 ether.
The formatUnits will format a BigNumberish into a string, which is useful when displaying a balance.
Units
Decimal Count
The unit specified may be an integer, which indicates how many decimal place the unit has. For example, 1 ether has 18 decimal places for wei, and if this library were used with Bitcoin, 1 BTC has 8 decimal places for satoshis.
Named Units
In addition to specifying unit as a number of decimals, there are several common units, which can be passed in as a string:
- wei --- 0
- kwei --- 3
- mwei --- 6
- gwei --- 9
- szabo --- 12
- finney --- 15
- ether --- 18
Functions
Formatting
utils . commify ( value ) => string
Returns a string with value grouped by 3 digits, separated by ,
.
Conversion
utils . formatUnits ( value [ , unit="ether" ] ) => string
Returns a string representation of value formatted with unit digits (if it is a number) or to the unit specified (if a string).
utils . formatEther ( value ) => string
The equivalent to calling formatUnits(value, "ether")
.
utils . parseUnits ( value [ , unit="ether" ] ) => BigNumber
Returns a BigNumber representation of value, parsed with unit digits (if it is a number) or from the unit specified (if a string).
utils . parseEther ( value ) => BigNumber
The equivalent to calling parseUnits(value, "ether")
.
Content Hash: 172c3345092afd2abb6a47dc225ae54c13c3ee3ce87868dd87e19656f4e6078d