FixedNumber

FixedNumber是一个内部具有十进制除数的固定宽度(以位为单位)的number,这使得它能表示十进制小数部分。

创建实例

FixedNumber构造函数不能被直接调用。有几个静态方法可以创建FixedNumber。

FixedNumber.from( value [ , format = "fixed" ] ) FixedNumber

format返回value的一个FixedNumber的实例。

FixedNumber.fromBytes( aBytesLike [ , format = "fixed" ] ) FixedNumber

format返回value的一个FixedNumber的实例。

FixedNumber.fromString( value [ , format = "fixed" ] ) FixedNumber

format返回value的一个FixedNumber的实例。value所包含的值不能超过format允许的位数。

FixedNumber.fromValue( value [ , decimals = 0 [ , format = "fixed" ] ] ) FixedNumber

format的格式为value返回具有decimals位数的FixedNumber实例。

属性

fixednumber.format

关于fixednumberFixedFormat

方法(Methods)

数学运算

fixednumber.addUnsafe( otherValue ) FixedNumber

返回一个新的FixedNumber,其值为fixedvalue + otherValue

fixednumber.subUnsafe( otherValue ) FixedNumber

返回一个新的FixedNumber,其值为fixedvalue - otherValue

fixednumber.mulUnsafe( otherValue ) FixedNumber

返回一个新的FixedNumber,其值为fixedvalue × otherValue

fixednumber.divUnsafe( otherValue ) FixedNumber

返回一个新的FixedNumber,其值为fixedvalue ÷ otherValue

fixednumber.round( [ decimals = 0 ] ) FixedNumber

返回一个新的FixedNumber,其值为fixedvalue按照decimals进行了四舍五入。

比较和等价

FixedNumber.isZero( ) boolean

当且仅当FixedNumber的值为零时返回true。

转换

fixednumber.toFormat( format ) FixedNumber

返回一个新的FixedNumber,其值是fixedvalue按照format进行了格式化后的输出。

fixednumber.toHexString( ) string

返回fixednumberHexString表示形式。

fixednumber.toString( ) string

返回fixednumber的字符串(string)表示形式。

fixednumber.toUnsafeFloat( ) float

返回一个fixednumber的浮点型JavaScript number 值。由于JavaScript number的四舍五入,该值仅是近似值。

检查

FixedNumber.isFixedNumber( value ) boolean

当且仅当value值是FixedNumber时返回true。

FixedFormat

通常直接使用这个类是不必要的,因为将格式字符串直接传入FixedNumber时会自动创建。

格式字符串

格式字符串由三个部分组成,包括有符号、位宽和小数位。

有符号格式字符串以fixed开头,无符号格式字符串以ufixed开头,然后是位宽和小数位。

宽度必须等于0 mod 8(即(width % 8) == 0),且不大于256位,小数点的位数不能大于80个。

例如:

创建实例

FixedFormat.from( value = "fixed128x18" ) FixedFormat

返回一个由value定义的FixedFormat格式的新实例。 可以传入任何有效的格式字符串,也可以传入任何定义了signedwidthdecimals的对象, 包括一个FixedFormat对象。

属性

fixedFormat.signed boolean

fixedFormat的signed值,如果支持负数则为返回true。

fixedFormat.width number

fixedFormat的位宽。

fixedFormat.decimals number

fixedFormat的小数点位数。

fixedFormat.name string

fixedFormat的name,可以用来重新创建格式,它是Solidity语言用来表示这种格式的字符串。

"fixed"

表示的是fixed128x80的缩写。