ERC20代币精度(Decimals)与数值显示的关系
问题描述
合约代码
数值计算分析
- 计算过程
- 显示效果
- 链上实际存储值:1,000,000,000,000,000
- 区块浏览器显示值:1,000,000,000
为什么会这样?
- 链上值:1,000,000,000,000,000
- 显示时:1,000,000,000,000,000 ÷ 10^6 = 1,000,000,000
如何验证实际数值?
- 添加查看函数
- 使用 web3.js/ethers.js 查询原始数值
最佳实践
- 在合约开发时,始终使用原始数值进行计算
- 在前端显示时,记得考虑代币精度

浙公网安备 33010602011771号