_section: FixedNumber @ A **FixedNumber** is a fixed-width (in bits) number with an internal base-10 divisor, which allows it to represent a decimal fractional component. _subsection: Creating Instances The FixedNumber constructor cannot be called directly. There are several static methods for creating a FixedNumber. _property: FixedNumber.from(value [ , format = "fixed" ] ) => [[FixedNumber]] @SRC Returns an instance of a **FixedNumber** for //value// as a //format//. _property: FixedNumber.fromBytes(aBytesLike [ , format = "fixed" ] ) => [[FixedNumber]] @SRC Returns an instance of a **FixedNumber** for //value// as a //format//. _property: FixedNumber.fromString(value [ , format = "fixed" ] ) => [[FixedNumber]] @SRC Returns an instance of a **FixedNumber** for //value// as a //format//. The //value// must not contain more decimals than the //format// permits. _property: FixedNumber.fromValue(value [ , decimals = 0 [ , format = "fixed" ] ] ) => [[FixedNumber]] @SRC Returns an instance of a **FixedNumber** for //value// with //decimals// as a //format//. _subsection: Properties _property: fixednumber.format The [FixedFormat](FixedFormat) of //fixednumber//. _subsection: Methods _heading: Math Operations _property: fixednumber.addUnsafe(otherValue) => [[FixedNumber]] @SRC Returns a new FixedNumber with the value of //fixedvalue// **+** //otherValue//. _property: fixednumber.subUnsafe(otherValue) => [[FixedNumber]] @SRC Returns a new FixedNumber with the value of //fixedvalue// **-** //otherValue//. _property: fixednumber.mulUnsafe(otherValue) => [[FixedNumber]] @SRC Returns a new FixedNumber with the value of //fixedvalue// **×** //otherValue//. _property: fixednumber.divUnsafe(otherValue) => [[FixedNumber]] @SRC Returns a new FixedNumber with the value of //fixedvalue// **÷** //otherValue//. _property: fixednumber.round([ decimals = 0 ]) => [[FixedNumber]] @SRC Returns a new FixedNumber with the value of //fixedvalue// rounded to //decimals//. _heading: Comparison and Equivalence _property: FixedNumber.isZero() => boolean @SRC Returns true if and only if the value of //FixedNumber// is zero. _heading: Conversion _property: fixednumber.toFormat(format) => [[FixedNumber]] @SRC Returns a new FixedNumber with the value of //fixedvalue// with //format//. _property: fixednumber.toHexString() => string @SRC Returns a [[HexString]] representation of //fixednumber//. _property: fixednumber.toString() => string @SRC Returns a string representation of //fixednumber//. _property: fixednumber.toUnsafeFloat() => float @SRC Returns a floating-point JavaScript number value of //fixednumber//. Due to rounding in JavaScript numbers, the value is only approximate. _heading: Inspection _property: FixedNumber.isFixedNumber(value) => boolean @SRC Returns true if and only if //value// is a **FixedNumber**. _subsection: FixedFormat @ A **FixedFormat** is a simple object which represents a decimal (base-10) Fixed-Point data representation. Usually using this class directly is uneccessary, as passing in a [[FixedFormat--strings]] directly into the [[FixedNumber]] will automatically create this. _heading: Format Strings @ A format string is composed of three components, including signed-ness, bit-width and number of decimals. A signed format string begins with ``fixed``, which an unsigned format string begins with ``ufixed``, followed by the width (in bits) and the number of decimals. The width must be conguent to 0 mod 8 (i.e. ``(width % 8) == 0``) and no larger than 256 bits and the number of decimals must be no larger than 80. For example: - **fixed128x18** is signed, 128 bits wide and has 18 decimals; this is useful for most purposes - **fixed32x0** is signed, 32 bits wide and has 0 decimals; this would be the same as a ``int32_t`` in C - **ufixed32x0** is unsigned, 32 bits wide and has 0 decimals; this would be the same as a ``uint32_t`` in C - **fixed** is shorthand for ``fixed128x18`` - **ufixed** is shorthand for ``ufixed128x18`` _heading: Creating Instances _property: FixedFormat.from(value = "fixed128x18") => [[FixedFormat]] @ @SRC Returns a new instance of a **FixedFormat** defined by //value//. Any valid [[FixedFormat--strings]] may be passed in as well as any object which has any of ``signed``, ``width`` and ``decimals`` defined, including a [[FixedFormat]] object. _heading: Properties _property: fixedFormat.signed => boolean The signed-ness of //fixedFormat//, true if negative values are supported. _property: fixedFormat.width => number The width (in bits) of //fixedFormat//. _property: fixedFormat.decimals => number The number of decimal points of //fixedFormat//. _property: fixedFormat.name => string The name of the //fixedFormat//, which can be used to recreate the format and is the string that the Solidity language uses to represent this format. _definition: **//"fixed"//** A shorthand for ``fixed128x80``.