asIntN |
|
|
asUintN |
|
|
browser.js |
|
0 |
call-value-of-when-to-string-present.js |
---
description: ToPrimitive receives "hint Number" as parameter, then valueOf needs to be called
esid: sec-bigint-constructor-number-value
info: |
1. If NewTarget is not undefined, throw a TypeError exception.
2. Let prim be ? ToPrimitive(value, hint Number).
...
features: [BigInt]
--- |
611 |
constructor-coercion.js |
---
description: BigInt constructor only coerces its input once
esid: sec-bigint-constructor-number-value
info: |
BigInt ( value )
1. If NewTarget is not undefined, throw a TypeError exception.
2. Let prim be ? ToPrimitive(value, number).
3. If Type(prim) is Number, return ? NumberToBigInt(prim).
4. Otherwise, return ? ToBigInt(prim).
features: [BigInt]
--- |
872 |
constructor-empty-string.js |
---
description: Empty String should in BigInt should result into 0n
esid: sec-string-to-bigint
info: |
ToBigInt ( argument )
String:
Let n be StringToBigInt(prim).
If n is NaN, throw a SyntaxError exception.
Return n.
StringToBigInt ( argument )
Replace the StrUnsignedDecimalLiteral production with DecimalDigits to not allow Infinity, decimal points, or exponents.
features: [BigInt]
--- |
632 |
constructor-from-binary-string.js |
---
description: String should be parsed to BigInt according StringToBigInt
esid: sec-string-to-bigint
info: |
ToBigInt ( argument )
String:
Let n be StringToBigInt(prim).
If n is NaN, throw a SyntaxError exception.
Return n.
StringToBigInt ( argument )
Replace the StrUnsignedDecimalLiteral production with DecimalDigits to not allow Infinity, decimal points, or exponents.
features: [BigInt]
--- |
1199 |
constructor-from-decimal-string.js |
---
description: String should be parsed to BigInt according StringToBigInt
esid: sec-string-to-bigint
info: |
ToBigInt ( argument )
String:
Let n be StringToBigInt(prim).
If n is NaN, throw a SyntaxError exception.
Return n.
StringToBigInt ( argument )
Replace the StrUnsignedDecimalLiteral production with DecimalDigits to not allow Infinity, decimal points, or exponents.
features: [BigInt]
--- |
1023 |
constructor-from-hex-string.js |
---
description: Hexdecimal prefixed String should be parsed to BigInt according StringToBigInt
esid: sec-string-to-bigint
info: |
ToBigInt ( argument )
String:
Let n be StringToBigInt(prim).
If n is NaN, throw a SyntaxError exception.
Return n.
StringToBigInt ( argument )
Replace the StrUnsignedDecimalLiteral production with DecimalDigits to not allow Infinity, decimal points, or exponents.
features: [BigInt]
--- |
989 |
constructor-from-octal-string.js |
---
description: Octal prefixed String should be parsed to BigInt according StringToBigInt
esid: sec-string-to-bigint
info: |
ToBigInt ( argument )
String:
Let n be StringToBigInt(prim).
If n is NaN, throw a SyntaxError exception.
Return n.
StringToBigInt ( argument )
Replace the StrUnsignedDecimalLiteral production with DecimalDigits to not allow Infinity, decimal points, or exponents.
features: [BigInt]
--- |
814 |
constructor-from-string-syntax-errors.js |
---
description: Invalid String into BigInt constructor should throw SyntaxError
esid: sec-string-to-bigint
info: |
ToBigInt ( argument )
String:
Let n be StringToBigInt(prim).
If n is NaN, throw a SyntaxError exception.
Return n.
StringToBigInt ( argument )
Replace the StrUnsignedDecimalLiteral production with DecimalDigits to not allow Infinity, decimal points, or exponents.
features: [BigInt]
--- |
1448 |
constructor-integer.js |
---
description: BigInt constructor called with integer argument
esid: sec-bigint-constructor-number-value
info: |
BigInt ( value )
...
3. If Type(prim) is Number, return ? NumberToBigInt(prim).
NumberToBigInt ( number )
...
3. Return a BigInt representing the mathematical value of number.
features: [BigInt]
--- |
1619 |
constructor-trailing-leading-spaces.js |
---
description: Trailing/Leading spaces should be ignored in BigInt constructor
esid: sec-string-to-bigint
info: |
ToBigInt ( argument )
String:
Let n be StringToBigInt(prim).
If n is NaN, throw a SyntaxError exception.
Return n.
StringToBigInt ( argument )
Replace the StrUnsignedDecimalLiteral production with DecimalDigits to not allow Infinity, decimal points, or exponents.
features: [BigInt]
--- |
823 |
infinity-throws-rangeerror.js |
---
description: BigInt throws a RangeError if value is Infinity
esid: sec-bigint-constructor
info: |
BigInt ( value )
...
2. Let prim be ? ToPrimitive(value, hint Number).
3. If Type(prim) is Number, return ? NumberToBigInt(prim).
...
NumberToBigInt ( number )
...
2. If IsSafeInteger(number) is false, throw a RangeError exception.
...
IsSafeInteger ( number )
...
2. If number is NaN, +∞, or -∞, return false.
features: [BigInt]
--- |
916 |
is-a-constructor.js |
---
esid: sec-ecmascript-standard-built-in-objects
description: >
BigInt is a constructor, and does implement [[Construct]], but is not new target
info: |
sec-bigint-constructor
- is not intended to be used with the new operator or to be subclassed. It may be used as the value of an extends clause of a class definition but a super call to the BigInt constructor will cause an exception.
sec-bigint-constructor-number-value
1. If NewTarget is not undefined, throw a TypeError exception.
includes: [isConstructor.js]
features: [BigInt, Reflect.construct, arrow-function]
--- |
1018 |
length.js |
---
esid: sec-bigint-constructor-number-value
description: BigInt.length property descriptor
info: |
BigInt ( value )
17 ECMAScript Standard Built-in Objects
Every built-in function object, including constructors, has a length
property whose value is an integer. Unless otherwise specified, this
value is equal to the largest number of named arguments shown in the
subclause headings for the function description. Optional parameters
(which are indicated with brackets: [ ]) or rest parameters (which
are shown using the form «...name») are not included in the default
argument count.
Unless otherwise specified, the length property of a built-in
function object has the attributes { [[Writable]]: false,
[[Enumerable]]: false, [[Configurable]]: true }.
includes: [propertyHelper.js]
features: [BigInt]
--- |
1107 |
name.js |
---
esid: sec-bigint-constructor-number-value
description: BigInt.name property descriptor
info: |
BigInt ( value )
17 ECMAScript Standard Built-in Objects
Every built-in function object, including constructors, that is not
identified as an anonymous function has a name property whose value
is a String. Unless otherwise specified, this value is the name that
is given to the function in this specification. For functions that
are specified as properties of objects, the name value is the
property name string used to access the function. [...]
Unless otherwise specified, the name property of a built-in function
object, if it exists, has the attributes { [[Writable]]: false,
[[Enumerable]]: false, [[Configurable]]: true }.
includes: [propertyHelper.js]
features: [BigInt]
--- |
1082 |
nan-throws-rangeerror.js |
---
description: BigInt throws a RangeError if value is NaN
esid: sec-bigint-constructor
info: |
BigInt ( value )
...
2. Let prim be ? ToPrimitive(value, hint Number).
3. If Type(prim) is Number, return ? NumberToBigInt(prim).
...
NumberToBigInt ( number )
...
2. If IsSafeInteger(number) is false, throw a RangeError exception.
...
IsSafeInteger ( number )
...
2. If number is NaN, +∞, or -∞, return false.
features: [BigInt]
--- |
901 |
negative-infinity-throws.rangeerror.js |
---
description: BigInt throws a RangeError if value is Infinity
esid: sec-bigint-constructor
info: |
BigInt ( value )
...
2. Let prim be ? ToPrimitive(value, hint Number).
3. If Type(prim) is Number, return ? NumberToBigInt(prim).
...
NumberToBigInt ( number )
...
2. If IsSafeInteger(number) is false, throw a RangeError exception.
...
IsSafeInteger ( number )
...
2. If number is NaN, +∞, or -∞, return false.
features: [BigInt]
--- |
925 |
non-integer-rangeerror.js |
---
description: Non integer number values will throw a RangeError
esid: sec-bigint-constructor
info: |
BigInt ( value )
...
2. Let prim be ? ToPrimitive(value, hint Number).
3. If Type(prim) is Number, return ? NumberToBigInt(prim).
...
NumberToBigInt ( number )
...
2. If IsSafeInteger(number) is false, throw a RangeError exception.
...
IsSafeInteger ( number )
...
2. If number is NaN, +∞, or -∞, return false.
3. Let integer be ToInteger(number).
4. If integer is not equal to number, return false.
...
features: [BigInt]
--- |
1163 |
parseInt |
|
|
prop-desc.js |
---
esid: sec-bigint-constructor
description: >
Property descriptor of BigInt
info: |
The BigInt Object
ECMAScript Standard Built-in Objects:
Every other data property described in clauses 18 through 26 and in Annex B.2
has the attributes { [[Writable]]: true, [[Enumerable]]: false,
[[Configurable]]: true } unless otherwise specified.
includes: [propertyHelper.js]
features: [BigInt]
--- |
667 |
proto.js |
---
description: The prototype of BigInt constructor is Function.prototype
esid: sec-properties-of-the-bigint-constructor
info: |
The value of the [[Prototype]] internal slot of the BigInt constructor is the
intrinsic object %FunctionPrototype%.
features: [BigInt]
--- |
521 |
prototype |
|
|
shell.js |
---
description: |
Test if a given function is a constructor function.
defines: [isConstructor]
features: [Reflect.construct]
--- |
596 |
tostring-throws.js |
---
description: Throws exception in BigIntConstructor if toString throws
esid: sec-bigint-constructor-number-value
info: |
1. If NewTarget is not undefined, throw a TypeError exception.
2. Let prim be ? ToPrimitive(value, hint Number).
3. If Type(prim) is Number, return ? NumberToBigInt(prim).
4. Otherwise, return ? ToBigInt(value).
features: [BigInt]
--- |
647 |
valueof-throws.js |
---
description: Throws exception in BigIntConstructor if valueOf throws
esid: sec-bigint-constructor-number-value
info: |
1. If NewTarget is not undefined, throw a TypeError exception.
2. Let prim be ? ToPrimitive(value, hint Number).
3. If Type(prim) is Number, return ? NumberToBigInt(prim).
4. Otherwise, return ? ToBigInt(value).
features: [BigInt]
--- |
645 |
wrapper-object-ordinary-toprimitive.js |
---
esid: sec-toprimitive
description: >
BigInt wrapper object is converted to primitive via OrdinaryToPrimitive.
info: |
ToPrimitive ( input [ , preferredType ] )
[...]
2. If Type(input) is Object, then
a. Let exoticToPrim be ? GetMethod(input, @@toPrimitive).
b. If exoticToPrim is not undefined, then
[...]
c. If preferredType is not present, let preferredType be number.
d. Return ? OrdinaryToPrimitive(input, preferredType).
features: [BigInt]
--- |
2599 |