Defines a Timestamp class for representing a 64-bit two’s-complement integer value, which faithfully simulates the behavior of a Java “Timestamp”. This implementation is derived from TimestampLib in GWT.
- class Timestamp()¶
Arguments:
- low (number) – the low (signed) 32 bits of the Timestamp.
- high (number) – the high (signed) 32 bits of the Timestamp.
Constructs a 64-bit two’s-complement integer, given its low and high 32-bit values as signed integers. See the from* functions below for more convenient ways of constructing Timestamps.
The internal representation of a Timestamp is the two given signed, 32-bit values. We use 32-bit pieces because these are the size of integers on which Javascript performs bit-operations. For operations like addition and multiplication, we split each number into 16-bit pieces, which can easily be multiplied within Javascript’s floating-point representation without overflow or change in sign.
In the algorithms below, we frequently reduce the negative case to the positive case by negating the input(s) and then post-processing the result. Note that we must ALWAYS check specially whether those values are MIN_VALUE (-2^63) because -MIN_VALUE == MIN_VALUE (since 2^63 cannot be represented as a positive number, it overflows back into a negative). Not handling this case would often result in infinite recursion.
Return the Number value.
Returns: | number the closest floating-point representation to this value. |
---|
Return the String value.
Arguments: |
|
---|---|
Returns: | string the textual representation of this value. |
Return the high 32-bits value.
Returns: | number the high 32-bits as a signed value. |
---|
Return the low 32-bits value.
Returns: | number the low 32-bits as a signed value. |
---|
Return the low unsigned 32-bits value.
Returns: | number the low 32-bits as an unsigned value. |
---|
Returns the number of bits needed to represent the absolute value of this Timestamp.
Returns: | number Returns the number of bits needed to represent the absolute value of this Timestamp. |
---|
Return whether this value is negative.
Returns: | boolean whether this value is negative. |
---|
Return whether this Timestamp equals the other
Arguments: |
|
---|---|
Returns: | boolean whether this Timestamp equals the other |
Return whether this Timestamp does not equal the other.
Arguments: |
|
---|---|
Returns: | boolean whether this Timestamp does not equal the other. |
Return whether this Timestamp is less than the other.
Arguments: |
|
---|---|
Returns: | boolean whether this Timestamp is less than the other. |
Return whether this Timestamp is less than or equal to the other.
Arguments: |
|
---|---|
Returns: | boolean whether this Timestamp is less than or equal to the other. |
Return whether this Timestamp is greater than the other.
Arguments: |
|
---|---|
Returns: | boolean whether this Timestamp is greater than the other. |
Return whether this Timestamp is greater than or equal to the other.
Arguments: |
|
---|---|
Returns: | boolean whether this Timestamp is greater than or equal to the other. |
Compares this Timestamp with the given one.
Arguments: |
|
---|---|
Returns: | boolean 0 if they are the same, 1 if the this is greater, and -1 if the given one is greater. |
Returns the sum of this and the given Timestamp.
Arguments: |
|
---|---|
Returns: | timestamp the sum of this and the given Timestamp. |
Returns the difference of this and the given Timestamp.
Arguments: |
|
---|---|
Returns: | timestamp the difference of this and the given Timestamp. |
Returns the product of this and the given Timestamp.
Arguments: |
|
---|---|
Returns: | timestamp the product of this and the other. |
Returns this Timestamp divided by the given one.
Arguments: |
|
---|---|
Returns: | timestamp this Timestamp divided by the given one. |
Returns this Timestamp modulo the given one.
Arguments: |
|
---|---|
Returns: | timestamp this Timestamp modulo the given one. |
Returns the bitwise-AND of this Timestamp and the given one.
Arguments: |
|
---|---|
Returns: | timestamp the bitwise-AND of this and the other. |
Returns the bitwise-OR of this Timestamp and the given one.
Arguments: |
|
---|---|
Returns: | timestamp the bitwise-OR of this and the other. |
Returns the bitwise-XOR of this Timestamp and the given one.
Arguments: |
|
---|---|
Returns: | timestamp the bitwise-XOR of this and the other. |
Returns this Timestamp with bits shifted to the left by the given amount.
Arguments: |
|
---|---|
Returns: | timestamp this shifted to the left by the given amount. |
Returns this Timestamp with bits shifted to the right by the given amount.
Arguments: |
|
---|---|
Returns: | timestamp this shifted to the right by the given amount. |
Returns this Timestamp with bits shifted to the right by the given amount, with the new top bits matching the current sign bit.
Arguments: |
|
---|---|
Returns: | timestamp this shifted to the right by the given amount, with zeros placed into the new leading bits. |
Returns a Timestamp representing the given (32-bit) integer value.
Arguments: |
|
---|---|
Returns: | timestamp the corresponding Timestamp value. |
Returns a Timestamp representing the given value, provided that it is a finite number. Otherwise, zero is returned.
Arguments: |
|
---|---|
Returns: | timestamp the corresponding Timestamp value. |
Returns a Timestamp representing the 64-bit integer that comes by concatenating the given high and low bits. Each is assumed to use 32 bits.
Arguments: |
|
---|---|
Returns: | timestamp the corresponding Timestamp value. |
Returns a Timestamp representation of the given string, written using the given radix.
Arguments: |
|
---|---|
Returns: | timestamp the corresponding Timestamp value. |