On this page
Class SassNumber
Hierarchy
- Value
- SassNumber
Index
Constructors
Accessors
Methods
- assertBoolean
- assertColor
- assertFunction
- assertInRange
- assertInt
- assertMap
- assertNoUnits
- assertNumber
- assertString
- assertUnit
- coerce
- coerceToMatch
- coerceValue
- coerceValueToMatch
- compatibleWithUnit
- convert
- convertToMatch
- convertValue
- convertValueToMatch
- equals
- get
- hasUnit
- hashCode
- sassIndexToListIndex
- tryMap
Constructors
constructor
-
Creates a new number with more complex units than just a single numerator.
Upon construction, any compatible numerator and denominator units are simplified away according to the conversion factor between them.
Parameters
value: number
The number's numeric value.
Optional unit: string | { denominatorUnits?: string[] | List<string>; numeratorUnits?: string[] | List<string> }
If this is a string, it's used as the single numerator unit for the number.
Returns SassNumber
Accessors
asInt
-
Returns null | number
asList
-
This value as a list.
All SassScript values can be used as lists. Maps count as lists of pairs, and all other values count as single-value lists.
Returns List<Value>
An immutable List from the
immutablepackage.
denominatorUnits
-
This number's denominator units as an immutable List from the
immutablepackage.Returns List<string>
hasBrackets
-
Whether this value as a list has brackets.
All SassScript values can be used as lists. Maps count as lists of pairs, and all other values count as single-value lists.
Returns boolean
hasUnits
-
Whether this number has any numerator or denominator units.
Returns boolean
isInt
-
Whether value is an integer according to Sass's equality logic.
Returns boolean
isTruthy
-
Whether the value counts as
truein an@ifstatement and other contexts.Returns boolean
numeratorUnits
-
This number's numerator units as an immutable List from the
immutablepackage.Returns List<string>
realNull
separator
-
The separator for this value as a list.
All SassScript values can be used as lists. Maps count as lists of pairs, and all other values count as single-value lists.
Returns ListSeparator
value
-
This number's numeric value.
Returns number
Methods
assertBoolean
-
Throws if
thisisn't a SassBoolean.⚠️ Heads up!
Functions should generally use isTruthy rather than requiring a literal boolean.
Parameters
Optional name: string
The name of the function argument
thiscame from (without the$) if it came from an argument. Used for error reporting.
Returns SassBoolean
assertColor
assertFunction
-
Throws if
thisisn't a SassFunction.Parameters
Optional name: string
The name of the function argument
thiscame from (without the$) if it came from an argument. Used for error reporting.
Returns SassFunction
assertInRange
-
Parameters
min: number
max: number
Optional name: string
The name of the function argument
thiscame from (without the$) if it came from an argument. Used for error reporting.
Returns number
assertInt
-
Parameters
Optional name: string
The name of the function argument
thiscame from (without the$) if it came from an argument. Used for error reporting.
Returns number
assertMap
assertNoUnits
-
If this number has no units, returns it. Otherwise, throws an error.
Parameters
Optional name: string
The name of the function argument
thiscame from (without the$) if it came from an argument. Used for error reporting.
Returns SassNumber
assertNumber
-
Throws if
thisisn't a SassNumber.Parameters
Optional name: string
The name of the function argument
thiscame from (without the$) if it came from an argument. Used for error reporting.
Returns SassNumber
assertString
-
Throws if
thisisn't a SassString.Parameters
Optional name: string
The name of the function argument
thiscame from (without the$) if it came from an argument. Used for error reporting.
Returns SassString
assertUnit
-
If this number has
unitas its only unit (and as a numerator), returns this number. Otherwise, throws an error.Parameters
unit: string
Optional name: string
The name of the function argument
thiscame from (without the$) if it came from an argument. Used for error reporting.
Returns SassNumber
coerce
-
Returns a copy of this number, converted to the units represented by
newNumeratorsandnewDenominators.Unlike convert this does not throw an error if this number is unitless and either
newNumeratorsornewDenominatorsare not empty, or vice-versa. Instead, it treats all unitless numbers as convertible to and from all units without changing the value.Parameters
newNumerators: string[] | List<string>
The numerator units to convert this number to. This may be either a plain JavaScript array or an immutable List from the
immutablepackage.newDenominators: string[] | List<string>
The denominator units to convert this number to. This may be either a plain JavaScript array or an immutable List from the
immutablepackage.Optional name: string
The name of the function argument
thiscame from (without the$) if it came from an argument. Used for error reporting.
Returns SassNumber
coerceToMatch
-
Returns a copy of this number, converted to the units represented by
newNumeratorsandnewDenominators.Unlike convertToMatch this does not throw an error if this number is unitless and either
newNumeratorsornewDenominatorsare not empty, or vice-versa. Instead, it treats all unitless numbers as convertible to and from all units without changing the value.Parameters
other: SassNumber
Optional name: string
The name of the function argument
thiscame from (without the$) if it came from an argument. Used for error reporting.Optional otherName: string
The name of the function argument
othercame from (without the$) if it came from an argument. Used for error reporting.
Returns SassNumber
coerceValue
-
Returns value, converted to the units represented by
newNumeratorsandnewDenominators.Unlike convertValue this does not throw an error if this number is unitless and either
newNumeratorsornewDenominatorsare not empty, or vice-versa. Instead, it treats all unitless numbers as convertible to and from all units without changing the value.Parameters
newNumerators: string[] | List<string>
The numerator units to convert value to. This may be either a plain JavaScript array or an immutable List from the
immutablepackage.newDenominators: string[] | List<string>
The denominator units to convert value to. This may be either a plain JavaScript array or an immutable List from the
immutablepackage.Optional name: string
The name of the function argument
thiscame from (without the$) if it came from an argument. Used for error reporting.
Returns number
coerceValueToMatch
-
Returns value, converted to the units represented by
newNumeratorsandnewDenominators.Unlike convertValueToMatch this does not throw an error if this number is unitless and either
newNumeratorsornewDenominatorsare not empty, or vice-versa. Instead, it treats all unitless numbers as convertible to and from all units without changing the value.Parameters
other: SassNumber
Optional name: string
The name of the function argument
thiscame from (without the$) if it came from an argument. Used for error reporting.Optional otherName: string
The name of the function argument
othercame from (without the$) if it came from an argument. Used for error reporting.
Returns number
compatibleWithUnit
-
Whether this has exactly one numerator unit, and that unit is compatible with
unit.Parameters
unit: string
Returns boolean
convert
-
Returns a copy of this number, converted to the units represented by
newNumeratorsandnewDenominators.Parameters
newNumerators: string[] | List<string>
The numerator units to convert this number to. This may be either a plain JavaScript array or an immutable List from the
immutablepackage.newDenominators: string[] | List<string>
The denominator units to convert this number to. This may be either a plain JavaScript array or an immutable List from the
immutablepackage.Optional name: string
The name of the function argument
thiscame from (without the$) if it came from an argument. Used for error reporting.
Returns SassNumber
convertToMatch
-
Returns a copy of this number, converted to the same units as
other.Parameters
other: SassNumber
Optional name: string
The name of the function argument
thiscame from (without the$) if it came from an argument. Used for error reporting.Optional otherName: string
The name of the function argument
othercame from (without the$) if it came from an argument. Used for error reporting.
Returns SassNumber
convertValue
-
Returns value, converted to the units represented by
newNumeratorsandnewDenominators.Parameters
newNumerators: string[] | List<string>
The numerator units to convert value to. This may be either a plain JavaScript array or an immutable List from the
immutablepackage.newDenominators: string[] | List<string>
The denominator units to convert value to. This may be either a plain JavaScript array or an immutable List from the
immutablepackage.Optional name: string
The name of the function argument
thiscame from (without the$) if it came from an argument. Used for error reporting.
Returns number
convertValueToMatch
-
Returns value, converted to the same units as
other.Parameters
other: SassNumber
Optional name: string
The name of the function argument
thiscame from (without the$) if it came from an argument. Used for error reporting.Optional otherName: string
The name of the function argument
othercame from (without the$) if it came from an argument. Used for error reporting.
Returns number
equals
-
Returns whether
thisrepresents the same value asother.Parameters
other: Value
Returns boolean
get
-
Returns the value at index
indexin this value as a list, orundefinedifindexisn't valid for this list.All SassScript values can be used as lists. Maps count as lists of pairs, and all other values count as single-value lists.
This is a shorthand for
this.asList.get(index), although it may be more efficient in some cases.⚠️ Heads up!
This method uses the same indexing conventions as the
immutablepackage: unlike Sass the index of the first element is 0, but like Sass negative numbers index from the end of the list.Parameters
index: number
Returns undefined | Value
hasUnit
-
Whether this number has
unitas its only unit (and as a numerator).Parameters
unit: string
Returns boolean
hashCode
-
Returns a hash code that can be used to store
thisin a hash map.Returns number
sassIndexToListIndex
-
Converts
sassIndexinto a JavaScript-style index into the list returned by asList.Sass indexes are one-based, while JavaScript indexes are zero-based. Sass indexes may also be negative in order to index from the end of the list.
Parameters
sassIndex: Value
The Sass-style index into this as a list.
Optional name: string
The name of the function argument
sassIndexcame from (without the$) if it came from an argument. Used for error reporting.
Returns number
tryMap
-
Returns
thisas a map if it counts as one (empty lists count as empty maps) ornullif it doesn't.Returns null | SassMap
© 2006–2022 the Sass team, and numerous contributors
Licensed under the MIT License.
https://sass-lang.com/documentation/js-api/classes/SassNumber
Sass's number type.