ethers.js10:BigNumber和单位转换

BigNumber

以太坊中,许多计算都对超出JavaScript整数的安全值(js中最大安全整数为9007199254740991)。因此,ethers.js使用BigNumber类安全地对任何数量级的数字进行数学运算。在ethers.js中,大多数需要返回值的操作将返回BigNumber,而接受值的参数也会接受它们。

可以利用ethers.BigNumber.from()函数将stringnumberBigNumber等类型转换为BigNumber

代码参考:BigNumber

注意,超过js最大安全整数的数值将不能转换。

const oneGwei = ethers.BigNumber.from("1000000000"); // 从十进制字符串生成
console.log(oneGwei)
console.log(ethers.BigNumber.from("0x3b9aca00")) // 从hex字符串生成
console.log(ethers.BigNumber.from(1000000000)) // 从数字生成
// 不能从js最大的安全整数之外的数字生成BigNumber,下面代码会报错
// ethers.BigNumber.from(Number.MAX_SAFE_INTEGER);
cons

你可能感兴趣的:(ethers,区块链,智能合约)