如何使用javascript检查我的usdt余额?我的账户余额为0,为什么输出150990000? uint256是什么?地址就是我的钱包,没问题
const options = {
method: 'POST',
headers: {accept: 'application/json', 'content-type': 'application/json'},
body: JSON.stringify({
owner_address: 'TUhycsR2geBGknpwqTz3n7i63XqPUWLJjR',
contract_address: 'TXYZopYRdj2D9XRtbG411XZZ3kM5VkAeBf',
function_selector: 'balanceOf(address)',
parameter: '000000000000000000000000a614f803b6fd780986a42c78ec9c7f77e6ded13c',
visible: true
})
};
fetch(' https://nile.trongrid.io/wallet/triggerconstantcontract', options)
.then(response => response.json())
.then(response => {
async function ff(){
console.log(response)
let outputs = '0x'+response.constant_result[0]
let result = await decodeParams(['uint256'], outputs, false)
console.log(result[0].toNumber())
}
ff();
})
.catch(err => console.error(err));
您看到 150990000 而不是 0 的原因可能是由于令牌的小数位所致。许多代币使用 18 位小数,因此您需要将结果除以 10**18 才能得到实际余额。如果您的令牌使用不同的小数位数,您需要相应调整。
具体操作方法如下:
console.log(结果[0].dividedBy(10**18).toNumber()); 这将为您提供代币基本单位的余额。